Cfg Node 10

PROC: Statement ParentRunner.withClassRules(RunBefores) LINE: 270
PREDS: N_9node9 preds:5 succs:10 exn:4
SUCCS: N_11node11 preds:10 succs:12 exn:4
EXN: N_4node4 preds: succs:2 exn:2
n$8=*&this:org.junit.runners.ParentRunner* [line 270]; _=*n$8:org.junit.runners.ParentRunner [line 270]; n$10=_fun_Description ParentRunner.getDescription()(n$8:org.junit.runners.ParentRunner*) virtual [line 270]; *&$irvar1:org.junit.runner.Description*=n$10 [line 270];
node10#session14(270) [compute pre] liveness 10 JOIN LEFT: normal:{ classRules, $irvar1, statement }, exn:{ } RIGHT: normal:{ }, exn:{ } RESULT: normal:{ classRules, $irvar1, statement }, exn:{ }
node10#session15(270) [exec] liveness 10 PRE STATE: normal:{ classRules, $irvar1, statement }, exn:{ } INSTR= *&$irvar1:org.junit.runner.Description*=n$10 [line 270]; STATE: normal:{ n$10, classRules, statement }, exn:{ } INSTR= n$10=_fun_Description ParentRunner.getDescription()(n$8:org.junit.runners.ParentRunner*) virtual [line 270]; STATE: normal:{ n$8, classRules, statement }, exn:{ } INSTR= _=*n$8:org.junit.runners.ParentRunner [line 270]; STATE UNCHANGED INSTR= n$8=*&this:org.junit.runners.ParentRunner* [line 270]; STATE: normal:{ classRules, statement, this }, exn:{ }
node10#session35(270) [compute pre] nullify
node10#session36(270) [exec] nullify PRE STATE: (normal:{ classRules }, exn:{ },normal:{ n$6, $irvar0 }, exn:{ }) INSTR= n$8=*&this:org.junit.runners.ParentRunner* [line 270]; STATE: (normal:{ n$8, classRules }, exn:{ },normal:{ n$6, $irvar0 }, exn:{ }) INSTR= _=*n$8:org.junit.runners.ParentRunner [line 270]; STATE: (normal:{ _, n$8, classRules }, exn:{ },normal:{ n$6, $irvar0 }, exn:{ }) INSTR= n$10=_fun_Description ParentRunner.getDescription()(n$8:org.junit.runners.ParentRunner*) virtual [line 270]; STATE: (normal:{ _, n$8, n$10, classRules }, exn:{ }, normal:{ n$6, $irvar0 }, exn:{ }) INSTR= *&$irvar1:org.junit.runner.Description*=n$10 [line 270]; STATE: (normal:{ classRules, $irvar1 }, exn:{ }, normal:{ _, n$8, n$10, this }, exn:{ })
node10#session58(270) [compute pre] devirtualizer analysis 10
node10#session59(270) [exec] devirtualizer analysis 10 PRE STATE: { } INSTR= n$8=*&this:org.junit.runners.ParentRunner* [line 270]; STATE UNCHANGED INSTR= _=*n$8:org.junit.runners.ParentRunner [line 270]; STATE UNCHANGED INSTR= n$10=_fun_Description ParentRunner.getDescription()(n$8:org.junit.runners.ParentRunner*) virtual [line 270]; STATE UNCHANGED INSTR= *&$irvar1:org.junit.runner.Description*=n$10 [line 270]; STATE UNCHANGED INSTR= NULLIFY(&this); [line 270]; STATE UNCHANGED INSTR= EXIT_SCOPE(_,n$8,n$10,this); [line 270]; STATE UNCHANGED
node10#session83(270) [exec] devirtualizer
node10#session84(270) [exec] devirtualizer
node10#session85(270) [exec] devirtualizer virtual call Description ParentRunner.getDescription()
node10#session86(270) [exec] devirtualizer
node10#session87(270) [exec] devirtualizer
node10#session88(270) [exec] devirtualizer
node10#session5(270) biabduction **** [FP:Pending] Statement ParentRunner.withClassRules(RunBefores) Node: 10, Procedure: Statement ParentRunner.withClassRules(RunBefores), Todo: 2 **** PROP 1 of 2: (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] PROP 2 of 2: (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] .... Instructions: .... n$8=*&this:org.junit.runners.ParentRunner* [line 270]; _=*n$8:org.junit.runners.ParentRunner [line 270]; n$10=_fun_Description ParentRunner.getDescription()(n$8:org.junit.runners.ParentRunner*) virtual [line 270]; *&$irvar1:org.junit.runner.Description*=n$10 [line 270]; NULLIFY(&this); [line 270]; EXIT_SCOPE(_,n$8,n$10,this); [line 270]; Processing prop 1/2 Instruction n$8=*&this:org.junit.runners.ParentRunner* [line 270] .... Rearrangement Start .... Exp: &this Prop: (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$94initial:org.junit.runners.model.Statement*; $T0_31 = n$95initial:void; $irvar1 = n$96initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$97initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] in prop_iter_extend_ptsto lexp: &this prop before: (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$94initial:org.junit.runners.model.Statement*; $T0_31 = n$95initial:void; $irvar1 = n$96initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$97initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] prop list after: PROP 1 of 1: (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$94initial:org.junit.runners.model.Statement*; $T0_31 = n$95initial:void; $irvar1 = n$96initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$97initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] Instruction Returns PROP 1 of 1: n$8 = old_this ; (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] Instruction _=*n$8:org.junit.runners.ParentRunner [line 270] .... Rearrangement Start .... Exp: @f$0 Prop: n$8 = old_this ; (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$98initial:org.junit.runners.model.Statement*; $T0_31 = n$99initial:void; $irvar1 = n$100initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$101initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] in prop_iter_extend_ptsto lexp: @f$0 prop before: n$8 = old_this ; (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$98initial:org.junit.runners.model.Statement*; $T0_31 = n$99initial:void; $irvar1 = n$100initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$101initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] prop list after: PROP 1 of 1: n$8 = old_this ; (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$98initial:org.junit.runners.model.Statement*; $T0_31 = n$99initial:void; $irvar1 = n$100initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$101initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] Instruction Returns PROP 1 of 1: n$8 = old_this ; (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] Instruction n$10=_fun_Description ParentRunner.getDescription()(n$8:org.junit.runners.ParentRunner*) virtual [line 270] Found 5 specs for function org.junit.runners.ParentRunner.getDescription():org.junit.runner.Description START EXECUTING SPECS FOR org.junit.runners.ParentRunner.getDescription():org.junit.runner.Description from state n$8 = old_this ; (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] EXECUTING SPEC 1/5 ACTUAL PRECONDITION = n$8 = old_this ; (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); this|callee = @f$0actual_precondition:org.junit.runners.ParentRunner*; old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] SPEC = --------------------------- ---------- --------------------------- PRE: this|callee = _t$147formal:org.junit.runners.ParentRunner*( sub ) ; _t$145|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$146|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$146rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$145rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$148); MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(return|callee); MEMna < Annotation[] ParentRunner.getRunnerAnnotations():395 > {vpath: }(_t$149); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$151); LOCKED(_t$146); RET < Annotation[] TestClass.getAnnotations() > (_t$149); RET < List ParentRunner.getFilteredChildren() > (_t$151); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$149); RET < TestClass ParentRunner.getTestClass() > (_t$145) ; return|callee = _t$150update:403:org.junit.runner.Description* ; _t$148|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$149|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$149update:395, fChildren:_t$148update:(z)395, fDisplayName:"null"update:395, fTestClass:nullupdate:395, fUniqueId:"null"update:395}formal(z):org.junit.runner.Description; _t$145|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$146|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$146formal, filteredChildren:_t$151update:(z)400, testClass:_t$145formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$151); RET < TestClass ParentRunner.getTestClass() > (_t$145) ; return|callee = EXN _t$151update:395:org.junit.runner.Description* ; _t$151|->{}alloc:java.lang.IllegalArgumentException; _t$145|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$146|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$146formal, filteredChildren:nullformal(z), testClass:_t$145formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: n$8 = @f$0; (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(@f$2); RET < boolean List.isEmpty() > (0) pi2: returns sub1: n$8 = @f$0 sub2: Current Implication SUB: n$8 = @f$0 (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); this|callee = @f$0actual_precondition:org.junit.runners.ParentRunner*; old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] |- this|callee = _t$147formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{childrenLock:_t$146rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$145rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$146|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$145|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply @f$0 _t$147 Current Implication SUB: n$8 = @f$0 (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$147 = @f$0] |- @f$0|->{childrenLock:_t$146rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$145rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$146|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$145|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) Current Implication SUB: n$8 = @f$0 (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$145 = @f$8; _t$146 = @f$6; _t$147 = @f$0 @f$7 = null MISSING FLD: @f$0|->{childrenLock:_t$146rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$145rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- @f$6|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); @f$8|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: n$8 = @f$0 (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$145 = @f$8; _t$146 = @f$6; _t$147 = @f$0 @f$9 = null; @f$7 = null* @f$8|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) MISSING FLD: @f$0|->{childrenLock:_t$146rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$145rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- @f$6|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: n$8 = @f$0 (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$145 = @f$8; _t$146 = @f$6; _t$147 = @f$0 @f$9 = null; @f$7 = null* @f$6|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); @f$8|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) MISSING FLD: @f$0|->{childrenLock:_t$146rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$145rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) ] Result of Abduction SUB: n$8 = @f$0 (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); this|callee = @f$0actual_precondition:org.junit.runners.ParentRunner*; old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$145 = @f$8; _t$146 = @f$6; _t$147 = @f$0 @f$9 = null; @f$7 = null* @f$6|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); @f$8|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) MISSING FLD: @f$0|->{childrenLock:_t$146rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$145rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- this|callee = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; @f$8|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$6|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:@f$6rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$8rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) ] returning TRUE in vpath_find exp:_t$148 vpath_find: cannot find _t$148 in vpath_find exp:_t$150 vpath_find: cannot find _t$150 in vpath_find exp:_t$149 vpath_find: cannot find _t$149 in vpath_find exp:_t$151 vpath_find: cannot find _t$151 New footprint: @f$9 = null; @f$7 = null * @f$6|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); @f$8|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) Frame fld: Frame typ: @f$0: org.junit.runners.ParentRunner( sub ) Missing fld: @f$0|->{childrenLock:@f$6rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$8rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) Instantiated frame: @f$2|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ); &classRules|->@f$2update:268:java.util.List*; &$irvar0|->0nullify:void; &return|->n$102initial:org.junit.runners.model.Statement*; &$T0_31|->n$103initial:void; &$irvar1|->n$104initial:void; &statement|->@f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); &old_statement|->@f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); &$irvar2|->n$105initial:void; &this|->@f$0formal:org.junit.runners.ParentRunner*( sub ); &old_this|->@f$0formal:org.junit.runners.ParentRunner*( sub ) Instantiated post: PROP 1 of 2: MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$148); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(return|callee); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$149); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$151); LOCKED(@f$6); RET < Annotation[] TestClass.getAnnotations() > (_t$149); RET < List ParentRunner.getFilteredChildren() > (_t$151); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$149); RET < TestClass ParentRunner.getTestClass() > (@f$8) ; return|callee = _t$150update:270:org.junit.runner.Description* ; _t$148|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$149|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$149update:270, fChildren:_t$148update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; @f$8|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$6|->{}formal(z):java.util.concurrent.locks.Lock( sub ); @f$0|->{childrenLock:@f$6formal, filteredChildren:_t$151update:(z)270, testClass:@f$8formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$151); RET < TestClass ParentRunner.getTestClass() > (@f$8) ; return|callee = EXN _t$151update:270:org.junit.runner.Description* ; _t$151|->{}alloc:java.lang.IllegalArgumentException; @f$8|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$6|->{}formal(z):java.util.concurrent.locks.Lock( sub ); @f$0|->{childrenLock:@f$6formal, filteredChildren:nullformal(z), testClass:@f$8formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** RESULTS FUNCTION CALL ******* PROP 1 of 2: @f$6 = null; @f$7 = null; n$8 = old_this ; (-1 < @f$5); @f$5 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$1); UND < List ParentRunner.classRules() > :268(classRules); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(@f$1); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$4update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$2|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$1|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; n$10|->{fAnnotations:_t$1update:270, fChildren:_t$2update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:@f$5formal(z)}formal(z):java.util.List( sub ); @f$2|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1formal, filteredChildren:_t$0update:(z)270, testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$7 = null; @f$6 = null; (-1 < @f$5); @f$5 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$4none:java.util.List*( sub ); statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$2|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] PROP 2 of 2: @f$6 = null; @f$7 = null; n$8 = old_this ; (-1 < @f$1); @f$1 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < TestClass ParentRunner.getTestClass() > (@f$5); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$3formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$3formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; @f$5|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$4|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$4formal, filteredChildren:nullformal(z), testClass:@f$5formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); classRules|->{mIsEmpty:@f$1formal(z)}formal(z):java.util.List( sub ) [footprint @f$7 = null; @f$6 = null; (-1 < @f$1); @f$1 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$3formal:org.junit.runners.ParentRunner*( sub ) ; @f$5|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$4|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$4rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$5rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); classRules|->{mIsEmpty:@f$1rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] ***** END RESULTS FUNCTION CALL ******* pvar: classRules found error in dereference spec_pre: @f$7 = null; @f$9 = null; n$8 = old_this ; (-1 < @f$3); @f$3 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$148); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$149); UND < List ParentRunner.classRules() > :268(classRules); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$151); LOCKED(@f$6); RET < List ParentRunner.getFilteredChildren() > (_t$151); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$149); RET < TestClass ParentRunner.getTestClass() > (@f$8); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$149|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; _t$148|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:_t$149update:270, fChildren:_t$148update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; @f$8|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$6|->{}formal(z):java.util.concurrent.locks.Lock( sub ); classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ); old_this|->{childrenLock:@f$6formal, filteredChildren:_t$151update:(z)270, testClass:@f$8formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$9 = null; @f$7 = null; (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; @f$8|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$6|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{childrenLock:@f$6rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$8rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] exp @f$2 desc: pvar: classRules found error in dereference spec_pre: @f$7 = null; @f$9 = null; n$8 = old_this ; (-1 < @f$3); @f$3 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$151); UND < List ParentRunner.classRules() > :268(classRules); RET < TestClass ParentRunner.getTestClass() > (@f$8); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$151update:270:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$151|->{}alloc:java.lang.IllegalArgumentException; @f$8|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$6|->{}formal(z):java.util.concurrent.locks.Lock( sub ); classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ); old_this|->{childrenLock:@f$6formal, filteredChildren:nullformal(z), testClass:@f$8formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$9 = null; @f$7 = null; (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; @f$8|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$6|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{childrenLock:@f$6rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$8rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] exp @f$2 desc: Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] EXECUTING SPEC 2/5 ACTUAL PRECONDITION = n$8 = old_this ; (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); this|callee = @f$0actual_precondition:org.junit.runners.ParentRunner*; old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] SPEC = --------------------------- ---------- --------------------------- PRE: _t$153 != null ; this|callee = _t$154formal:org.junit.runners.ParentRunner*( sub ) ; _t$152|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$153|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:_t$153rearrange:(z)530, testClass:_t$152rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$153 != null; MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$155); MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(return|callee); MEMna < Annotation[] ParentRunner.getRunnerAnnotations():395 > {vpath: }(_t$156); RET < Annotation[] TestClass.getAnnotations() > (_t$156); RET < List ParentRunner.getFilteredChildren() > (_t$153); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$156); RET < TestClass ParentRunner.getTestClass() > (_t$152) ; return|callee = _t$157update:403:org.junit.runner.Description* ; _t$155|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$156|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$156update:395, fChildren:_t$155update:(z)395, fDisplayName:"null"update:395, fTestClass:nullupdate:395, fUniqueId:"null"update:395}formal(z):org.junit.runner.Description; _t$152|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$153|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$153formal(z), testClass:_t$152formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$153 != null; MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$157); RET < TestClass ParentRunner.getTestClass() > (_t$152) ; return|callee = EXN _t$157update:395:org.junit.runner.Description* ; _t$157|->{}alloc:java.lang.IllegalArgumentException; _t$152|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$153|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$153formal(z), testClass:_t$152formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: n$8 = @f$0; (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(@f$2); RET < boolean List.isEmpty() > (0) pi2: _t$153 != null returns sub1: n$8 = @f$0 sub2: Current Implication SUB: n$8 = @f$0 (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); this|callee = @f$0actual_precondition:org.junit.runners.ParentRunner*; old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] |- this|callee = _t$154formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{filteredChildren:_t$153rearrange:(z)530, testClass:_t$152rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$153|->{}rearrange:400:java.util.List( sub ); _t$152|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply @f$0 _t$154 Current Implication SUB: n$8 = @f$0 (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$154 = @f$0] |- @f$0|->{filteredChildren:_t$153rearrange:(z)530, testClass:_t$152rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$153|->{}rearrange:400:java.util.List( sub ); _t$152|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) Current Implication SUB: n$8 = @f$0 (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$152 = @f$11; _t$153 = @f$10; _t$154 = @f$0 MISSING FLD: @f$0|->{filteredChildren:_t$153rearrange:(z)530, testClass:_t$152rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- @f$10|->{}rearrange:400:java.util.List( sub ); @f$11|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: n$8 = @f$0 (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$152 = @f$11; _t$153 = @f$10; _t$154 = @f$0 @f$12 = null* @f$11|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) MISSING FLD: @f$0|->{filteredChildren:_t$153rearrange:(z)530, testClass:_t$152rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- @f$10|->{}rearrange:400:java.util.List( sub ) [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: n$8 = @f$0 (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$152 = @f$11; _t$153 = @f$10; _t$154 = @f$0 @f$12 = null* @f$10|->{}rearrange:400:java.util.List( sub ); @f$11|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) MISSING FLD: @f$0|->{filteredChildren:_t$153rearrange:(z)530, testClass:_t$152rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) ] Result of Abduction SUB: n$8 = @f$0 (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); this|callee = @f$0actual_precondition:org.junit.runners.ParentRunner*; old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$152 = @f$11; _t$153 = @f$10; _t$154 = @f$0 @f$12 = null* @f$10|->{}rearrange:400:java.util.List( sub ); @f$11|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) MISSING FLD: @f$0|->{filteredChildren:_t$153rearrange:(z)530, testClass:_t$152rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- @f$10 != null ; this|callee = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; @f$11|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$10|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:@f$10rearrange:(z)530, testClass:@f$11rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) ] returning TRUE in vpath_find exp:_t$155 vpath_find: cannot find _t$155 in vpath_find exp:_t$157 vpath_find: cannot find _t$157 in vpath_find exp:_t$156 vpath_find: cannot find _t$156 in vpath_find exp:_t$157 vpath_find: cannot find _t$157 New footprint: @f$12 = null * @f$10|->{}rearrange:400:java.util.List( sub ); @f$11|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) Frame fld: Frame typ: @f$0: org.junit.runners.ParentRunner( sub ) Missing fld: @f$0|->{filteredChildren:@f$10rearrange:(z)530, testClass:@f$11rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) Instantiated frame: @f$2|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ); &classRules|->@f$2update:268:java.util.List*; &$irvar0|->0nullify:void; &return|->n$102initial:org.junit.runners.model.Statement*; &$T0_31|->n$103initial:void; &$irvar1|->n$104initial:void; &statement|->@f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); &old_statement|->@f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); &$irvar2|->n$105initial:void; &this|->@f$0formal:org.junit.runners.ParentRunner*( sub ); &old_this|->@f$0formal:org.junit.runners.ParentRunner*( sub ) Instantiated post: PROP 1 of 2: @f$10 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$155); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(return|callee); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$156); RET < Annotation[] TestClass.getAnnotations() > (_t$156); RET < List ParentRunner.getFilteredChildren() > (@f$10); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$156); RET < TestClass ParentRunner.getTestClass() > (@f$11) ; return|callee = _t$157update:270:org.junit.runner.Description* ; _t$155|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$156|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$156update:270, fChildren:_t$155update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; @f$11|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$10|->{}formal:java.util.List( sub ); @f$0|->{filteredChildren:@f$10formal(z), testClass:@f$11formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: @f$10 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$157); RET < TestClass ParentRunner.getTestClass() > (@f$11) ; return|callee = EXN _t$157update:270:org.junit.runner.Description* ; _t$157|->{}alloc:java.lang.IllegalArgumentException; @f$11|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$10|->{}formal:java.util.List( sub ); @f$0|->{filteredChildren:@f$10formal(z), testClass:@f$11formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** RESULTS FUNCTION CALL ******* PROP 1 of 2: @f$6 = null; n$8 = old_this ; (-1 < @f$5); @f$5 != 1; @f$1 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < List ParentRunner.getFilteredChildren() > (@f$1); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$0); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$4update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$1|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$0|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; n$10|->{fAnnotations:_t$0update:270, fChildren:_t$1update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:@f$5formal(z)}formal(z):java.util.List( sub ); @f$2|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:@f$1formal(z), testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$6 = null; (-1 < @f$5); @f$5 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$4none:java.util.List*( sub ); statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$2|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:400:java.util.List( sub ); old_this|->{filteredChildren:@f$1rearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] PROP 2 of 2: @f$6 = null; n$8 = old_this ; (-1 < @f$1); @f$4 != null; @f$1 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < TestClass ParentRunner.getTestClass() > (@f$5); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$3formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$3formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; @f$5|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$4|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:@f$4formal(z), testClass:@f$5formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); classRules|->{mIsEmpty:@f$1formal(z)}formal(z):java.util.List( sub ) [footprint @f$6 = null; (-1 < @f$1); @f$1 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$3formal:org.junit.runners.ParentRunner*( sub ) ; @f$5|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$4|->{}rearrange:400:java.util.List( sub ); old_this|->{filteredChildren:@f$4rearrange:(z)530, testClass:@f$5rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); classRules|->{mIsEmpty:@f$1rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] ***** END RESULTS FUNCTION CALL ******* pvar: classRules found error in dereference spec_pre: @f$12 = null; n$8 = old_this ; (-1 < @f$3); @f$10 != null; @f$3 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$155); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$156); UND < List ParentRunner.classRules() > :268(classRules); RET < List ParentRunner.getFilteredChildren() > (@f$10); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$156); RET < TestClass ParentRunner.getTestClass() > (@f$11); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$156|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; _t$155|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:_t$156update:270, fChildren:_t$155update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; @f$11|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$10|->{}formal:java.util.List( sub ); classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ); old_this|->{filteredChildren:@f$10formal(z), testClass:@f$11formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$12 = null; (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; @f$11|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$10|->{}rearrange:400:java.util.List( sub ); classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{filteredChildren:@f$10rearrange:(z)530, testClass:@f$11rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] exp @f$2 desc: pvar: classRules found error in dereference spec_pre: @f$12 = null; n$8 = old_this ; (-1 < @f$3); @f$10 != null; @f$3 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$157); UND < List ParentRunner.classRules() > :268(classRules); RET < TestClass ParentRunner.getTestClass() > (@f$11); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$157update:270:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$157|->{}alloc:java.lang.IllegalArgumentException; @f$11|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$10|->{}formal:java.util.List( sub ); classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ); old_this|->{filteredChildren:@f$10formal(z), testClass:@f$11formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$12 = null; (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; @f$11|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$10|->{}rearrange:400:java.util.List( sub ); classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{filteredChildren:@f$10rearrange:(z)530, testClass:@f$11rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] exp @f$2 desc: Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] EXECUTING SPEC 3/5 ACTUAL PRECONDITION = n$8 = old_this ; (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); this|callee = @f$0actual_precondition:org.junit.runners.ParentRunner*; old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] SPEC = --------------------------- ---------- --------------------------- PRE: _t$158 != null ; this|callee = _t$160formal:org.junit.runners.ParentRunner*( sub ) ; _t$158|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$159|->{clazz:_t$158rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:_t$159rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) POST 1 of 1: _t$158 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$161); RET < Class TestClass.getJavaClass() > (_t$158); RET < TestClass ParentRunner.getTestClass() > (_t$159) ; return|callee = EXN _t$161update:397:org.junit.runner.Description* ; _t$161|->{}alloc:java.lang.IllegalArgumentException; _t$158|->{name:""formal(z)}formal(z):java.lang.Class( sub ); _t$159|->{clazz:_t$158formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:_t$159formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: n$8 = @f$0; (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(@f$2); RET < boolean List.isEmpty() > (0) pi2: _t$158 != null returns sub1: n$8 = @f$0 sub2: Current Implication SUB: n$8 = @f$0 (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); this|callee = @f$0actual_precondition:org.junit.runners.ParentRunner*; old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] |- this|callee = _t$160formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{testClass:_t$159rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$159|->{clazz:_t$158rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$158|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) Current Implication SUB: n$8 = @f$0 (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); this|callee = @f$0actual_precondition:org.junit.runners.ParentRunner*; old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] |- this|callee = _t$160formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{testClass:_t$159rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$159|->{clazz:_t$158rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$158|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: ""|->{count:_t$179none, hash:_t$180none, offset:_t$181none, value:_t$182none}none:java.lang.String] [FRAME TYPING: "": java.lang.String ] do_imply @f$0 _t$160 Current Implication SUB: n$8 = @f$0 (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$160 = @f$0] |- @f$0|->{testClass:_t$159rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$159|->{clazz:_t$158rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$158|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: ""|->{count:_t$179none, hash:_t$180none, offset:_t$181none, value:_t$182none}none:java.lang.String] [FRAME TYPING: "": java.lang.String ] Current Implication SUB: n$8 = @f$0 (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$159 = @f$13; _t$160 = @f$0 MISSING FLD: @f$0|->{testClass:_t$159rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- @f$13|->{clazz:_t$158rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$158|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: ""|->{count:_t$179none, hash:_t$180none, offset:_t$181none, value:_t$182none}none:java.lang.String] [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] Current Implication SUB: n$8 = @f$0 (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$158 = @f$14; _t$159 = @f$13; _t$160 = @f$0 @f$13|->{clazz:_t$158rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) MISSING FLD: @f$0|->{testClass:_t$159rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- @f$14|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: ""|->{count:_t$179none, hash:_t$180none, offset:_t$181none, value:_t$182none}none:java.lang.String] [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] Final Implication SUB: n$8 = @f$0 (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$158 = @f$14; _t$159 = @f$13; _t$160 = @f$0 @f$15 = ""* @f$14|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$13|->{clazz:_t$158rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) MISSING FLD: @f$0|->{testClass:_t$159rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- [FRAME FLD: ""|->{count:_t$179none, hash:_t$180none, offset:_t$181none, value:_t$182none}none:java.lang.String] [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] Result of Abduction SUB: n$8 = @f$0 (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); this|callee = @f$0actual_precondition:org.junit.runners.ParentRunner*; old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$158 = @f$14; _t$159 = @f$13; _t$160 = @f$0 @f$15 = ""* @f$14|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$13|->{clazz:_t$158rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) MISSING FLD: @f$0|->{testClass:_t$159rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- @f$14 != null ; this|callee = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; @f$14|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$13|->{clazz:@f$14rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:@f$13rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME FLD: ""|->{count:_t$179none, hash:_t$180none, offset:_t$181none, value:_t$182none}none:java.lang.String] [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] returning TRUE in vpath_find exp:_t$161 vpath_find: cannot find _t$161 New footprint: @f$15 = "" * @f$14|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$13|->{clazz:@f$14rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) Frame fld: ""|->{count:_t$179none, hash:_t$180none, offset:_t$181none, value:_t$182none}none:java.lang.String Frame typ: @f$0: org.junit.runners.ParentRunner( sub ) "": java.lang.String Missing fld: @f$0|->{testClass:@f$13rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) Instantiated frame: @f$2|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ); &classRules|->@f$2update:268:java.util.List*; &$irvar0|->0nullify:void; &return|->n$102initial:org.junit.runners.model.Statement*; &$T0_31|->n$103initial:void; &$irvar1|->n$104initial:void; &statement|->@f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); &old_statement|->@f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); &$irvar2|->n$105initial:void; &this|->@f$0formal:org.junit.runners.ParentRunner*( sub ); &old_this|->@f$0formal:org.junit.runners.ParentRunner*( sub ) Instantiated post: PROP 1 of 1: @f$14 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$161); RET < Class TestClass.getJavaClass() > (@f$14); RET < TestClass ParentRunner.getTestClass() > (@f$13) ; return|callee = EXN _t$161update:270:org.junit.runner.Description* ; _t$161|->{}alloc:java.lang.IllegalArgumentException; @f$14|->{name:""formal(z)}formal(z):java.lang.Class( sub ); @f$13|->{clazz:@f$14formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$0|->{testClass:@f$13formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** RESULTS FUNCTION CALL ******* PROP 1 of 1: @f$6 = ""; n$8 = old_this ; (-1 < @f$1); @f$4 != null; @f$1 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < Class TestClass.getJavaClass() > (@f$4); RET < TestClass ParentRunner.getTestClass() > (@f$5); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$3formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$3formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; @f$5|->{clazz:@f$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$4|->{name:""formal(z)}formal(z):java.lang.Class( sub ); old_this|->{testClass:@f$5formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); classRules|->{mIsEmpty:@f$1formal(z)}formal(z):java.util.List( sub ) [footprint @f$6 = ""; (-1 < @f$1); @f$1 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$3formal:org.junit.runners.ParentRunner*( sub ) ; @f$5|->{clazz:@f$4rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$4|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); old_this|->{testClass:@f$5rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); classRules|->{mIsEmpty:@f$1rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] ***** END RESULTS FUNCTION CALL ******* pvar: classRules found error in dereference spec_pre: @f$15 = ""; n$8 = old_this ; (-1 < @f$3); @f$14 != null; @f$3 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$161); UND < List ParentRunner.classRules() > :268(classRules); RET < Class TestClass.getJavaClass() > (@f$14); RET < TestClass ParentRunner.getTestClass() > (@f$13); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$161update:270:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$161|->{}alloc:java.lang.IllegalArgumentException; @f$14|->{name:""formal(z)}formal(z):java.lang.Class( sub ); @f$13|->{clazz:@f$14formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ); old_this|->{testClass:@f$13formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$15 = ""; (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; @f$14|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$13|->{clazz:@f$14rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{testClass:@f$13rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] exp @f$2 desc: Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] EXECUTING SPEC 4/5 ACTUAL PRECONDITION = n$8 = old_this ; (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); this|callee = @f$0actual_precondition:org.junit.runners.ParentRunner*; old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] SPEC = --------------------------- ---------- --------------------------- PRE: _t$162 != null; _t$162 != ""; _t$163 != null ; this|callee = _t$166formal:org.junit.runners.ParentRunner*( sub ) ; _t$162|->{}rearrange:(z)394:java.lang.String( sub ); _t$163|->{name:_t$162rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$164|->{clazz:_t$163rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$165|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$165rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$164rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$162 != null; _t$162 != ""; _t$163 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$167); MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(return|callee); UND < Annotation[] Class.getAnnotations() > :216(_t$169); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$170); LOCKED(_t$165); RET < Annotation[] TestClass.getAnnotations() > (_t$169); RET < List ParentRunner.getFilteredChildren() > (_t$170); RET < Class TestClass.getJavaClass() > (_t$163); RET < String Class.getName() > (_t$162); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$169); RET < TestClass ParentRunner.getTestClass() > (_t$164) ; return|callee = _t$168update:403:org.junit.runner.Description* ; _t$167|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; return|callee|->{fAnnotations:_t$169update:397, fChildren:_t$167update:(z)397, fDisplayName:_t$162update:397, fTestClass:_t$163update:397, fUniqueId:_t$162update:397}formal(z):org.junit.runner.Description; _t$162|->{}formal:java.lang.String( sub ); _t$163|->{name:_t$162formal(z)}formal(z):java.lang.Class( sub ); _t$164|->{clazz:_t$163formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$165|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$165formal, filteredChildren:_t$170update:(z)400, testClass:_t$164formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$162 != null; _t$162 != ""; _t$163 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$170); RET < Class TestClass.getJavaClass() > (_t$163); RET < String Class.getName() > (_t$162); RET < TestClass ParentRunner.getTestClass() > (_t$164) ; return|callee = EXN _t$170update:397:org.junit.runner.Description* ; _t$170|->{}alloc:java.lang.IllegalArgumentException; _t$162|->{}formal:java.lang.String( sub ); _t$163|->{name:_t$162formal(z)}formal(z):java.lang.Class( sub ); _t$164|->{clazz:_t$163formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$165|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$165formal, filteredChildren:nullformal(z), testClass:_t$164formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: n$8 = @f$0; (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(@f$2); RET < boolean List.isEmpty() > (0) pi2: _t$162 != null; _t$162 != ""; _t$163 != null returns sub1: n$8 = @f$0 sub2: Current Implication SUB: n$8 = @f$0 (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); this|callee = @f$0actual_precondition:org.junit.runners.ParentRunner*; old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] |- this|callee = _t$166formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{childrenLock:_t$165rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$164rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$165|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$164|->{clazz:_t$163rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$163|->{name:_t$162rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$162|->{}rearrange:(z)394:java.lang.String( sub ) do_imply @f$0 _t$166 Current Implication SUB: n$8 = @f$0 (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$166 = @f$0] |- @f$0|->{childrenLock:_t$165rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$164rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$165|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$164|->{clazz:_t$163rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$163|->{name:_t$162rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$162|->{}rearrange:(z)394:java.lang.String( sub ) Current Implication SUB: n$8 = @f$0 (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$164 = @f$18; _t$165 = @f$16; _t$166 = @f$0 @f$17 = null MISSING FLD: @f$0|->{childrenLock:_t$165rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$164rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- @f$16|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); @f$18|->{clazz:_t$163rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$163|->{name:_t$162rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$162|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: n$8 = @f$0 (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$163 = @f$19; _t$164 = @f$18; _t$165 = @f$16; _t$166 = @f$0 @f$17 = null* @f$18|->{clazz:_t$163rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) MISSING FLD: @f$0|->{childrenLock:_t$165rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$164rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- @f$16|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); @f$19|->{name:_t$162rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$162|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: n$8 = @f$0 (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$163 = @f$19; _t$164 = @f$18; _t$165 = @f$16; _t$166 = @f$0 @f$17 = null* @f$16|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); @f$18|->{clazz:_t$163rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) MISSING FLD: @f$0|->{childrenLock:_t$165rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$164rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- @f$19|->{name:_t$162rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$162|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: n$8 = @f$0 (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$162 = @f$20; _t$163 = @f$19; _t$164 = @f$18; _t$165 = @f$16; _t$166 = @f$0 @f$17 = null* @f$19|->{name:_t$162rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$16|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); @f$18|->{clazz:_t$163rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) MISSING FLD: @f$0|->{childrenLock:_t$165rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$164rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- @f$20|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: n$8 = @f$0 (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$162 = @f$20; _t$163 = @f$19; _t$164 = @f$18; _t$165 = @f$16; _t$166 = @f$0 @f$17 = null* @f$20|->{}rearrange:(z)394:java.lang.String( sub ); @f$19|->{name:_t$162rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$16|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); @f$18|->{clazz:_t$163rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) MISSING FLD: @f$0|->{childrenLock:_t$165rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$164rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) ] imply_pi: adding missing atom _t$162 != "" Result of Abduction SUB: n$8 = @f$0 (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); this|callee = @f$0actual_precondition:org.junit.runners.ParentRunner*; old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$162 = @f$20; _t$163 = @f$19; _t$164 = @f$18; _t$165 = @f$16; _t$166 = @f$0 _t$162 != ""; @f$17 = null* @f$20|->{}rearrange:(z)394:java.lang.String( sub ); @f$19|->{name:_t$162rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$16|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); @f$18|->{clazz:_t$163rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) MISSING FLD: @f$0|->{childrenLock:_t$165rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$164rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- @f$20 != null; @f$20 != ""; @f$19 != null ; this|callee = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; @f$20|->{}rearrange:(z)394:java.lang.String( sub ); @f$19|->{name:@f$20rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$18|->{clazz:@f$19rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$16|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:@f$16rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$18rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) ] returning TRUE in vpath_find exp:_t$167 vpath_find: cannot find _t$167 in vpath_find exp:_t$168 vpath_find: cannot find _t$168 in vpath_find exp:_t$170 vpath_find: cannot find _t$170 New footprint: @f$20 != ""; @f$17 = null * @f$20|->{}rearrange:(z)394:java.lang.String( sub ); @f$19|->{name:@f$20rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$16|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); @f$18|->{clazz:@f$19rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) Frame fld: Frame typ: @f$0: org.junit.runners.ParentRunner( sub ) Missing fld: @f$0|->{childrenLock:@f$16rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$18rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) Instantiated frame: @f$2|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ); &classRules|->@f$2update:268:java.util.List*; &$irvar0|->0nullify:void; &return|->n$102initial:org.junit.runners.model.Statement*; &$T0_31|->n$103initial:void; &$irvar1|->n$104initial:void; &statement|->@f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); &old_statement|->@f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); &$irvar2|->n$105initial:void; &this|->@f$0formal:org.junit.runners.ParentRunner*( sub ); &old_this|->@f$0formal:org.junit.runners.ParentRunner*( sub ) Instantiated post: PROP 1 of 2: @f$20 != null; @f$20 != ""; @f$19 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$167); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(return|callee); UND < Annotation[] Class.getAnnotations() > :216(_t$169); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$170); LOCKED(@f$16); RET < Annotation[] TestClass.getAnnotations() > (_t$169); RET < List ParentRunner.getFilteredChildren() > (_t$170); RET < Class TestClass.getJavaClass() > (@f$19); RET < String Class.getName() > (@f$20); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$169); RET < TestClass ParentRunner.getTestClass() > (@f$18) ; return|callee = _t$168update:270:org.junit.runner.Description* ; _t$167|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; return|callee|->{fAnnotations:_t$169update:270, fChildren:_t$167update:(z)270, fDisplayName:@f$20update:270, fTestClass:@f$19update:270, fUniqueId:@f$20update:270}formal(z):org.junit.runner.Description; @f$20|->{}formal:java.lang.String( sub ); @f$19|->{name:@f$20formal(z)}formal(z):java.lang.Class( sub ); @f$18|->{clazz:@f$19formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$16|->{}formal(z):java.util.concurrent.locks.Lock( sub ); @f$0|->{childrenLock:@f$16formal, filteredChildren:_t$170update:(z)270, testClass:@f$18formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: @f$20 != null; @f$20 != ""; @f$19 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$170); RET < Class TestClass.getJavaClass() > (@f$19); RET < String Class.getName() > (@f$20); RET < TestClass ParentRunner.getTestClass() > (@f$18) ; return|callee = EXN _t$170update:270:org.junit.runner.Description* ; _t$170|->{}alloc:java.lang.IllegalArgumentException; @f$20|->{}formal:java.lang.String( sub ); @f$19|->{name:@f$20formal(z)}formal(z):java.lang.Class( sub ); @f$18|->{clazz:@f$19formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$16|->{}formal(z):java.util.concurrent.locks.Lock( sub ); @f$0|->{childrenLock:@f$16formal, filteredChildren:nullformal(z), testClass:@f$18formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** RESULTS FUNCTION CALL ******* PROP 1 of 2: @f$8 = null; n$8 = old_this ; (-1 < @f$7); @f$7 != 1; @f$4 != null; @f$4 != ""; @f$3 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268(classRules); UND < Annotation[] Class.getAnnotations() > :216(_t$1); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(@f$1); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Class TestClass.getJavaClass() > (@f$3); RET < String Class.getName() > (@f$4); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$6update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$2|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:_t$1update:270, fChildren:_t$2update:(z)270, fDisplayName:@f$4update:270, fTestClass:@f$3update:270, fUniqueId:@f$4update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:@f$7formal(z)}formal(z):java.util.List( sub ); @f$4|->{}formal:java.lang.String( sub ); @f$3|->{name:@f$4formal(z)}formal(z):java.lang.Class( sub ); @f$2|->{clazz:@f$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1formal, filteredChildren:_t$0update:(z)270, testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$8 = null; (-1 < @f$7); @f$7 != 1; @f$4 != "" * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$6none:java.util.List*( sub ); statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$7rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$4|->{}rearrange:(z)394:java.lang.String( sub ); @f$3|->{name:@f$4rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$2|->{clazz:@f$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] PROP 2 of 2: @f$8 = null; n$8 = old_this ; (-1 < @f$1); @f$6 != null; @f$5 != null; @f$5 != ""; @f$1 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < Class TestClass.getJavaClass() > (@f$6); RET < String Class.getName() > (@f$5); RET < TestClass ParentRunner.getTestClass() > (@f$7); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$3formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$3formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; @f$7|->{clazz:@f$6formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$6|->{name:@f$5formal(z)}formal(z):java.lang.Class( sub ); @f$5|->{}formal:java.lang.String( sub ); @f$4|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$4formal, filteredChildren:nullformal(z), testClass:@f$7formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); classRules|->{mIsEmpty:@f$1formal(z)}formal(z):java.util.List( sub ) [footprint @f$8 = null; (-1 < @f$1); @f$5 != ""; @f$1 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$3formal:org.junit.runners.ParentRunner*( sub ) ; @f$7|->{clazz:@f$6rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$6|->{name:@f$5rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$5|->{}rearrange:(z)394:java.lang.String( sub ); @f$4|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$4rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$7rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); classRules|->{mIsEmpty:@f$1rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] ***** END RESULTS FUNCTION CALL ******* pvar: classRules found error in dereference spec_pre: @f$17 = null; n$8 = old_this ; (-1 < @f$3); @f$20 != null; @f$20 != ""; @f$19 != null; @f$3 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$167); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268(classRules); UND < Annotation[] Class.getAnnotations() > :216(_t$169); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$170); LOCKED(@f$16); RET < List ParentRunner.getFilteredChildren() > (_t$170); RET < Class TestClass.getJavaClass() > (@f$19); RET < String Class.getName() > (@f$20); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$169); RET < TestClass ParentRunner.getTestClass() > (@f$18); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$167|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:_t$169update:270, fChildren:_t$167update:(z)270, fDisplayName:@f$20update:270, fTestClass:@f$19update:270, fUniqueId:@f$20update:270}formal(z):org.junit.runner.Description; @f$20|->{}formal:java.lang.String( sub ); @f$19|->{name:@f$20formal(z)}formal(z):java.lang.Class( sub ); @f$18|->{clazz:@f$19formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$16|->{}formal(z):java.util.concurrent.locks.Lock( sub ); classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ); old_this|->{childrenLock:@f$16formal, filteredChildren:_t$170update:(z)270, testClass:@f$18formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$17 = null; (-1 < @f$3); @f$20 != ""; @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; @f$20|->{}rearrange:(z)394:java.lang.String( sub ); @f$19|->{name:@f$20rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$18|->{clazz:@f$19rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$16|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{childrenLock:@f$16rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$18rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] exp @f$2 desc: pvar: classRules found error in dereference spec_pre: @f$17 = null; n$8 = old_this ; (-1 < @f$3); @f$20 != null; @f$20 != ""; @f$19 != null; @f$3 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$170); UND < List ParentRunner.classRules() > :268(classRules); RET < Class TestClass.getJavaClass() > (@f$19); RET < String Class.getName() > (@f$20); RET < TestClass ParentRunner.getTestClass() > (@f$18); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$170update:270:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$170|->{}alloc:java.lang.IllegalArgumentException; @f$20|->{}formal:java.lang.String( sub ); @f$19|->{name:@f$20formal(z)}formal(z):java.lang.Class( sub ); @f$18|->{clazz:@f$19formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$16|->{}formal(z):java.util.concurrent.locks.Lock( sub ); classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ); old_this|->{childrenLock:@f$16formal, filteredChildren:nullformal(z), testClass:@f$18formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$17 = null; (-1 < @f$3); @f$20 != ""; @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; @f$20|->{}rearrange:(z)394:java.lang.String( sub ); @f$19|->{name:@f$20rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$18|->{clazz:@f$19rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$16|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{childrenLock:@f$16rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$18rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] exp @f$2 desc: Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] EXECUTING SPEC 5/5 ACTUAL PRECONDITION = n$8 = old_this ; (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); this|callee = @f$0actual_precondition:org.junit.runners.ParentRunner*; old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] SPEC = --------------------------- ---------- --------------------------- PRE: _t$171 != null; _t$171 != ""; _t$172 != null; _t$174 != null ; this|callee = _t$175formal:org.junit.runners.ParentRunner*( sub ) ; _t$171|->{}rearrange:(z)394:java.lang.String( sub ); _t$172|->{name:_t$171rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$173|->{clazz:_t$172rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$174|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:_t$174rearrange:(z)530, testClass:_t$173rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$171 != null; _t$171 != ""; _t$172 != null; _t$174 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$176); MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(return|callee); UND < Annotation[] Class.getAnnotations() > :216(_t$178); RET < Annotation[] TestClass.getAnnotations() > (_t$178); RET < List ParentRunner.getFilteredChildren() > (_t$174); RET < Class TestClass.getJavaClass() > (_t$172); RET < String Class.getName() > (_t$171); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$178); RET < TestClass ParentRunner.getTestClass() > (_t$173) ; return|callee = _t$177update:403:org.junit.runner.Description* ; _t$176|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; return|callee|->{fAnnotations:_t$178update:397, fChildren:_t$176update:(z)397, fDisplayName:_t$171update:397, fTestClass:_t$172update:397, fUniqueId:_t$171update:397}formal(z):org.junit.runner.Description; _t$171|->{}formal:java.lang.String( sub ); _t$172|->{name:_t$171formal(z)}formal(z):java.lang.Class( sub ); _t$173|->{clazz:_t$172formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$174|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$174formal(z), testClass:_t$173formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$171 != null; _t$171 != ""; _t$172 != null; _t$174 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$177); RET < Class TestClass.getJavaClass() > (_t$172); RET < String Class.getName() > (_t$171); RET < TestClass ParentRunner.getTestClass() > (_t$173) ; return|callee = EXN _t$177update:397:org.junit.runner.Description* ; _t$177|->{}alloc:java.lang.IllegalArgumentException; _t$171|->{}formal:java.lang.String( sub ); _t$172|->{name:_t$171formal(z)}formal(z):java.lang.Class( sub ); _t$173|->{clazz:_t$172formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$174|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$174formal(z), testClass:_t$173formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: n$8 = @f$0; (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(@f$2); RET < boolean List.isEmpty() > (0) pi2: _t$171 != null; _t$171 != ""; _t$172 != null; _t$174 != null returns sub1: n$8 = @f$0 sub2: Current Implication SUB: n$8 = @f$0 (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); this|callee = @f$0actual_precondition:org.junit.runners.ParentRunner*; old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] |- this|callee = _t$175formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{filteredChildren:_t$174rearrange:(z)530, testClass:_t$173rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$174|->{}rearrange:400:java.util.List( sub ); _t$173|->{clazz:_t$172rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$172|->{name:_t$171rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$171|->{}rearrange:(z)394:java.lang.String( sub ) do_imply @f$0 _t$175 Current Implication SUB: n$8 = @f$0 (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$175 = @f$0] |- @f$0|->{filteredChildren:_t$174rearrange:(z)530, testClass:_t$173rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$174|->{}rearrange:400:java.util.List( sub ); _t$173|->{clazz:_t$172rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$172|->{name:_t$171rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$171|->{}rearrange:(z)394:java.lang.String( sub ) Current Implication SUB: n$8 = @f$0 (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$173 = @f$22; _t$174 = @f$21; _t$175 = @f$0 MISSING FLD: @f$0|->{filteredChildren:_t$174rearrange:(z)530, testClass:_t$173rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- @f$21|->{}rearrange:400:java.util.List( sub ); @f$22|->{clazz:_t$172rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$172|->{name:_t$171rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$171|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: n$8 = @f$0 (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$172 = @f$23; _t$173 = @f$22; _t$174 = @f$21; _t$175 = @f$0 @f$22|->{clazz:_t$172rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) MISSING FLD: @f$0|->{filteredChildren:_t$174rearrange:(z)530, testClass:_t$173rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- @f$21|->{}rearrange:400:java.util.List( sub ); @f$23|->{name:_t$171rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$171|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: n$8 = @f$0 (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$172 = @f$23; _t$173 = @f$22; _t$174 = @f$21; _t$175 = @f$0 @f$21|->{}rearrange:400:java.util.List( sub ); @f$22|->{clazz:_t$172rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) MISSING FLD: @f$0|->{filteredChildren:_t$174rearrange:(z)530, testClass:_t$173rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- @f$23|->{name:_t$171rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$171|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: n$8 = @f$0 (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$171 = @f$24; _t$172 = @f$23; _t$173 = @f$22; _t$174 = @f$21; _t$175 = @f$0 @f$23|->{name:_t$171rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$21|->{}rearrange:400:java.util.List( sub ); @f$22|->{clazz:_t$172rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) MISSING FLD: @f$0|->{filteredChildren:_t$174rearrange:(z)530, testClass:_t$173rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- @f$24|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: n$8 = @f$0 (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$171 = @f$24; _t$172 = @f$23; _t$173 = @f$22; _t$174 = @f$21; _t$175 = @f$0 @f$24|->{}rearrange:(z)394:java.lang.String( sub ); @f$23|->{name:_t$171rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$21|->{}rearrange:400:java.util.List( sub ); @f$22|->{clazz:_t$172rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) MISSING FLD: @f$0|->{filteredChildren:_t$174rearrange:(z)530, testClass:_t$173rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) ] imply_pi: adding missing atom _t$171 != "" Result of Abduction SUB: n$8 = @f$0 (-1 < @f$3); @f$3 != 1; UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); this|callee = @f$0actual_precondition:org.junit.runners.ParentRunner*; old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (-1 < @f$3); @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$171 = @f$24; _t$172 = @f$23; _t$173 = @f$22; _t$174 = @f$21; _t$175 = @f$0 _t$171 != ""* @f$24|->{}rearrange:(z)394:java.lang.String( sub ); @f$23|->{name:_t$171rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$21|->{}rearrange:400:java.util.List( sub ); @f$22|->{clazz:_t$172rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) MISSING FLD: @f$0|->{filteredChildren:_t$174rearrange:(z)530, testClass:_t$173rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- @f$24 != null; @f$24 != ""; @f$23 != null; @f$21 != null ; this|callee = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; @f$24|->{}rearrange:(z)394:java.lang.String( sub ); @f$23|->{name:@f$24rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$22|->{clazz:@f$23rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$21|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:@f$21rearrange:(z)530, testClass:@f$22rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) ] returning TRUE in vpath_find exp:_t$176 vpath_find: cannot find _t$176 in vpath_find exp:_t$177 vpath_find: cannot find _t$177 in vpath_find exp:_t$177 vpath_find: cannot find _t$177 New footprint: @f$24 != "" * @f$24|->{}rearrange:(z)394:java.lang.String( sub ); @f$23|->{name:@f$24rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$21|->{}rearrange:400:java.util.List( sub ); @f$22|->{clazz:@f$23rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) Frame fld: Frame typ: @f$0: org.junit.runners.ParentRunner( sub ) Missing fld: @f$0|->{filteredChildren:@f$21rearrange:(z)530, testClass:@f$22rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) Instantiated frame: @f$2|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ); &classRules|->@f$2update:268:java.util.List*; &$irvar0|->0nullify:void; &return|->n$102initial:org.junit.runners.model.Statement*; &$T0_31|->n$103initial:void; &$irvar1|->n$104initial:void; &statement|->@f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); &old_statement|->@f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); &$irvar2|->n$105initial:void; &this|->@f$0formal:org.junit.runners.ParentRunner*( sub ); &old_this|->@f$0formal:org.junit.runners.ParentRunner*( sub ) Instantiated post: PROP 1 of 2: @f$24 != null; @f$24 != ""; @f$23 != null; @f$21 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$176); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(return|callee); UND < Annotation[] Class.getAnnotations() > :216(_t$178); RET < Annotation[] TestClass.getAnnotations() > (_t$178); RET < List ParentRunner.getFilteredChildren() > (@f$21); RET < Class TestClass.getJavaClass() > (@f$23); RET < String Class.getName() > (@f$24); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$178); RET < TestClass ParentRunner.getTestClass() > (@f$22) ; return|callee = _t$177update:270:org.junit.runner.Description* ; _t$176|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; return|callee|->{fAnnotations:_t$178update:270, fChildren:_t$176update:(z)270, fDisplayName:@f$24update:270, fTestClass:@f$23update:270, fUniqueId:@f$24update:270}formal(z):org.junit.runner.Description; @f$24|->{}formal:java.lang.String( sub ); @f$23|->{name:@f$24formal(z)}formal(z):java.lang.Class( sub ); @f$22|->{clazz:@f$23formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$21|->{}formal:java.util.List( sub ); @f$0|->{filteredChildren:@f$21formal(z), testClass:@f$22formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: @f$24 != null; @f$24 != ""; @f$23 != null; @f$21 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$177); RET < Class TestClass.getJavaClass() > (@f$23); RET < String Class.getName() > (@f$24); RET < TestClass ParentRunner.getTestClass() > (@f$22) ; return|callee = EXN _t$177update:270:org.junit.runner.Description* ; _t$177|->{}alloc:java.lang.IllegalArgumentException; @f$24|->{}formal:java.lang.String( sub ); @f$23|->{name:@f$24formal(z)}formal(z):java.lang.Class( sub ); @f$22|->{clazz:@f$23formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$21|->{}formal:java.util.List( sub ); @f$0|->{filteredChildren:@f$21formal(z), testClass:@f$22formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** RESULTS FUNCTION CALL ******* PROP 1 of 2: n$8 = old_this ; (-1 < @f$7); @f$7 != 1; @f$4 != null; @f$4 != ""; @f$3 != null; @f$1 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268(classRules); UND < Annotation[] Class.getAnnotations() > :216(_t$0); RET < List ParentRunner.getFilteredChildren() > (@f$1); RET < Class TestClass.getJavaClass() > (@f$3); RET < String Class.getName() > (@f$4); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$0); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$6update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$1|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:_t$0update:270, fChildren:_t$1update:(z)270, fDisplayName:@f$4update:270, fTestClass:@f$3update:270, fUniqueId:@f$4update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:@f$7formal(z)}formal(z):java.util.List( sub ); @f$4|->{}formal:java.lang.String( sub ); @f$3|->{name:@f$4formal(z)}formal(z):java.lang.Class( sub ); @f$2|->{clazz:@f$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:@f$1formal(z), testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint (-1 < @f$7); @f$7 != 1; @f$4 != "" * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$6none:java.util.List*( sub ); statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$7rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$4|->{}rearrange:(z)394:java.lang.String( sub ); @f$3|->{name:@f$4rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$2|->{clazz:@f$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:400:java.util.List( sub ); old_this|->{filteredChildren:@f$1rearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] PROP 2 of 2: n$8 = old_this ; (-1 < @f$1); @f$6 != null; @f$5 != null; @f$5 != ""; @f$4 != null; @f$1 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < Class TestClass.getJavaClass() > (@f$6); RET < String Class.getName() > (@f$5); RET < TestClass ParentRunner.getTestClass() > (@f$7); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$3formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$3formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; @f$7|->{clazz:@f$6formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$6|->{name:@f$5formal(z)}formal(z):java.lang.Class( sub ); @f$5|->{}formal:java.lang.String( sub ); @f$4|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:@f$4formal(z), testClass:@f$7formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); classRules|->{mIsEmpty:@f$1formal(z)}formal(z):java.util.List( sub ) [footprint (-1 < @f$1); @f$5 != ""; @f$1 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$3formal:org.junit.runners.ParentRunner*( sub ) ; @f$7|->{clazz:@f$6rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$6|->{name:@f$5rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$5|->{}rearrange:(z)394:java.lang.String( sub ); @f$4|->{}rearrange:400:java.util.List( sub ); old_this|->{filteredChildren:@f$4rearrange:(z)530, testClass:@f$7rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); classRules|->{mIsEmpty:@f$1rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] ***** END RESULTS FUNCTION CALL ******* pvar: classRules found error in dereference spec_pre: n$8 = old_this ; (-1 < @f$3); @f$24 != null; @f$24 != ""; @f$23 != null; @f$21 != null; @f$3 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$176); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268(classRules); UND < Annotation[] Class.getAnnotations() > :216(_t$178); RET < List ParentRunner.getFilteredChildren() > (@f$21); RET < Class TestClass.getJavaClass() > (@f$23); RET < String Class.getName() > (@f$24); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$178); RET < TestClass ParentRunner.getTestClass() > (@f$22); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$102initial:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$176|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:_t$178update:270, fChildren:_t$176update:(z)270, fDisplayName:@f$24update:270, fTestClass:@f$23update:270, fUniqueId:@f$24update:270}formal(z):org.junit.runner.Description; @f$24|->{}formal:java.lang.String( sub ); @f$23|->{name:@f$24formal(z)}formal(z):java.lang.Class( sub ); @f$22|->{clazz:@f$23formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$21|->{}formal:java.util.List( sub ); classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ); old_this|->{filteredChildren:@f$21formal(z), testClass:@f$22formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint (-1 < @f$3); @f$24 != ""; @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; @f$24|->{}rearrange:(z)394:java.lang.String( sub ); @f$23|->{name:@f$24rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$22|->{clazz:@f$23rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$21|->{}rearrange:400:java.util.List( sub ); classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{filteredChildren:@f$21rearrange:(z)530, testClass:@f$22rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] exp @f$2 desc: pvar: classRules found error in dereference spec_pre: n$8 = old_this ; (-1 < @f$3); @f$24 != null; @f$24 != ""; @f$23 != null; @f$21 != null; @f$3 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$177); UND < List ParentRunner.classRules() > :268(classRules); RET < Class TestClass.getJavaClass() > (@f$23); RET < String Class.getName() > (@f$24); RET < TestClass ParentRunner.getTestClass() > (@f$22); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$177update:270:org.junit.runners.model.Statement*; $T0_31 = n$103initial:void; $irvar1 = n$104initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$105initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$177|->{}alloc:java.lang.IllegalArgumentException; @f$24|->{}formal:java.lang.String( sub ); @f$23|->{name:@f$24formal(z)}formal(z):java.lang.Class( sub ); @f$22|->{clazz:@f$23formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$21|->{}formal:java.util.List( sub ); classRules|->{mIsEmpty:@f$3formal(z)}formal(z):java.util.List( sub ); old_this|->{filteredChildren:@f$21formal(z), testClass:@f$22formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint (-1 < @f$3); @f$24 != ""; @f$3 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; @f$24|->{}rearrange:(z)394:java.lang.String( sub ); @f$23|->{name:@f$24rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$22|->{clazz:@f$23rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$21|->{}rearrange:400:java.util.List( sub ); classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{filteredChildren:@f$21rearrange:(z)530, testClass:@f$22rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] exp @f$2 desc: Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 9: @f$6 = null; @f$7 = null; n$8 = old_this ; (-1 < @f$5); @f$5 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$6); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$5); UND < List ParentRunner.classRules() > :268(classRules); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(@f$1); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$5); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$4update:268:java.util.List*; $irvar0 = 0nullify:void; return = _t$4initial:org.junit.runners.model.Statement*; $T0_31 = _t$3initial:void; $irvar1 = _t$2initial:void; statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$6|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$5|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; n$10|->{fAnnotations:_t$5update:270, fChildren:_t$6update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:@f$5formal(z)}formal(z):java.util.List( sub ); @f$2|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1formal, filteredChildren:_t$0update:(z)270, testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$7 = null; @f$6 = null; (-1 < @f$5); @f$5 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$4none:java.util.List*( sub ); statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$2|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] PROP 2 of 9: @f$6 = null; @f$7 = null; n$8 = old_this ; (-1 < @f$1); @f$1 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (n$10); RET < TestClass ParentRunner.getTestClass() > (@f$5); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = @f$3formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$3formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; @f$5|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$4|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$4formal, filteredChildren:nullformal(z), testClass:@f$5formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); classRules|->{mIsEmpty:@f$1formal(z)}formal(z):java.util.List( sub ) [footprint @f$7 = null; @f$6 = null; (-1 < @f$1); @f$1 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$3formal:org.junit.runners.ParentRunner*( sub ) ; @f$5|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$4|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$4rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$5rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); classRules|->{mIsEmpty:@f$1rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] PROP 3 of 9: @f$6 = null; n$8 = old_this ; (-1 < @f$5); @f$5 != 1; @f$1 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$5); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$4); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (@f$1); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$4); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$4update:268:java.util.List*; $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$5|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$4|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; n$10|->{fAnnotations:_t$4update:270, fChildren:_t$5update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:@f$5formal(z)}formal(z):java.util.List( sub ); @f$2|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:@f$1formal(z), testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$6 = null; (-1 < @f$5); @f$5 != 1; @f$1 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$4none:java.util.List*( sub ); statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$2|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:400:java.util.List( sub ); old_this|->{filteredChildren:@f$1rearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] PROP 4 of 9: @f$6 = null; n$8 = old_this ; (-1 < @f$1); @f$4 != null; @f$1 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (n$10); RET < TestClass ParentRunner.getTestClass() > (@f$5); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = @f$3formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$3formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; @f$5|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$4|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:@f$4formal(z), testClass:@f$5formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); classRules|->{mIsEmpty:@f$1formal(z)}formal(z):java.util.List( sub ) [footprint @f$6 = null; (-1 < @f$1); @f$4 != null; @f$1 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$3formal:org.junit.runners.ParentRunner*( sub ) ; @f$5|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$4|->{}rearrange:400:java.util.List( sub ); old_this|->{filteredChildren:@f$4rearrange:(z)530, testClass:@f$5rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); classRules|->{mIsEmpty:@f$1rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] PROP 5 of 9: @f$6 = ""; n$8 = old_this ; (-1 < @f$1); @f$4 != null; @f$1 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (n$10); RET < Class TestClass.getJavaClass() > (@f$4); RET < TestClass ParentRunner.getTestClass() > (@f$5); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = @f$3formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$3formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; @f$5|->{clazz:@f$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$4|->{name:""formal(z)}formal(z):java.lang.Class( sub ); old_this|->{testClass:@f$5formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); classRules|->{mIsEmpty:@f$1formal(z)}formal(z):java.util.List( sub ) [footprint @f$6 = ""; (-1 < @f$1); @f$4 != null; @f$1 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$3formal:org.junit.runners.ParentRunner*( sub ) ; @f$5|->{clazz:@f$4rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$4|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); old_this|->{testClass:@f$5rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); classRules|->{mIsEmpty:@f$1rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] PROP 6 of 9: @f$8 = null; n$8 = old_this ; (-1 < @f$7); @f$7 != 1; @f$4 != null; @f$4 != ""; @f$3 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$6); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268(classRules); UND < Annotation[] Class.getAnnotations() > :216(_t$5); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(@f$1); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Class TestClass.getJavaClass() > (@f$3); RET < String Class.getName() > (@f$4); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$5); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$6update:268:java.util.List*; $irvar0 = 0nullify:void; return = _t$4initial:org.junit.runners.model.Statement*; $T0_31 = _t$3initial:void; $irvar1 = _t$2initial:void; statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$6|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:_t$5update:270, fChildren:_t$6update:(z)270, fDisplayName:@f$4update:270, fTestClass:@f$3update:270, fUniqueId:@f$4update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:@f$7formal(z)}formal(z):java.util.List( sub ); @f$4|->{}formal:java.lang.String( sub ); @f$3|->{name:@f$4formal(z)}formal(z):java.lang.Class( sub ); @f$2|->{clazz:@f$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1formal, filteredChildren:_t$0update:(z)270, testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$8 = null; (-1 < @f$7); @f$7 != 1; @f$4 != null; @f$4 != ""; @f$3 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$6none:java.util.List*( sub ); statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$7rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$4|->{}rearrange:(z)394:java.lang.String( sub ); @f$3|->{name:@f$4rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$2|->{clazz:@f$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] PROP 7 of 9: @f$8 = null; n$8 = old_this ; (-1 < @f$1); @f$6 != null; @f$5 != null; @f$5 != ""; @f$1 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (n$10); RET < Class TestClass.getJavaClass() > (@f$6); RET < String Class.getName() > (@f$5); RET < TestClass ParentRunner.getTestClass() > (@f$7); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = @f$3formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$3formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; @f$7|->{clazz:@f$6formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$6|->{name:@f$5formal(z)}formal(z):java.lang.Class( sub ); @f$5|->{}formal:java.lang.String( sub ); @f$4|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$4formal, filteredChildren:nullformal(z), testClass:@f$7formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); classRules|->{mIsEmpty:@f$1formal(z)}formal(z):java.util.List( sub ) [footprint @f$8 = null; (-1 < @f$1); @f$6 != null; @f$5 != null; @f$5 != ""; @f$1 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$3formal:org.junit.runners.ParentRunner*( sub ) ; @f$7|->{clazz:@f$6rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$6|->{name:@f$5rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$5|->{}rearrange:(z)394:java.lang.String( sub ); @f$4|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$4rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$7rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); classRules|->{mIsEmpty:@f$1rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] PROP 8 of 9: n$8 = old_this ; (-1 < @f$7); @f$7 != 1; @f$4 != null; @f$4 != ""; @f$3 != null; @f$1 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$5); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268(classRules); UND < Annotation[] Class.getAnnotations() > :216(_t$4); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (@f$1); RET < Class TestClass.getJavaClass() > (@f$3); RET < String Class.getName() > (@f$4); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$4); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$6update:268:java.util.List*; $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$5|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:_t$4update:270, fChildren:_t$5update:(z)270, fDisplayName:@f$4update:270, fTestClass:@f$3update:270, fUniqueId:@f$4update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:@f$7formal(z)}formal(z):java.util.List( sub ); @f$4|->{}formal:java.lang.String( sub ); @f$3|->{name:@f$4formal(z)}formal(z):java.lang.Class( sub ); @f$2|->{clazz:@f$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:@f$1formal(z), testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint (-1 < @f$7); @f$7 != 1; @f$4 != null; @f$4 != ""; @f$3 != null; @f$1 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$6none:java.util.List*( sub ); statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$7rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$4|->{}rearrange:(z)394:java.lang.String( sub ); @f$3|->{name:@f$4rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$2|->{clazz:@f$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:400:java.util.List( sub ); old_this|->{filteredChildren:@f$1rearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] PROP 9 of 9: n$8 = old_this ; (-1 < @f$1); @f$6 != null; @f$5 != null; @f$5 != ""; @f$4 != null; @f$1 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (n$10); RET < Class TestClass.getJavaClass() > (@f$6); RET < String Class.getName() > (@f$5); RET < TestClass ParentRunner.getTestClass() > (@f$7); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = @f$3formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$3formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; @f$7|->{clazz:@f$6formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$6|->{name:@f$5formal(z)}formal(z):java.lang.Class( sub ); @f$5|->{}formal:java.lang.String( sub ); @f$4|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:@f$4formal(z), testClass:@f$7formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); classRules|->{mIsEmpty:@f$1formal(z)}formal(z):java.util.List( sub ) [footprint (-1 < @f$1); @f$6 != null; @f$5 != null; @f$5 != ""; @f$4 != null; @f$1 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$3formal:org.junit.runners.ParentRunner*( sub ) ; @f$7|->{clazz:@f$6rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$6|->{name:@f$5rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$5|->{}rearrange:(z)394:java.lang.String( sub ); @f$4|->{}rearrange:400:java.util.List( sub ); old_this|->{filteredChildren:@f$4rearrange:(z)530, testClass:@f$7rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); classRules|->{mIsEmpty:@f$1rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] Instruction *&$irvar1:org.junit.runner.Description*=n$10 [line 270] in vpath_find exp:n$106 vpath_find: cannot find n$106 in vpath_find exp:n$10 vpath_find: cannot find n$10 in vpath_find exp:n$107 vpath_find: cannot find n$107 .... Rearrangement Start .... Exp: &$irvar1 Prop: @f$6 = null; @f$7 = null; n$8 = old_this ; (-1 < @f$5); @f$5 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$106); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(n$107); UND < List ParentRunner.classRules() > :268(classRules); UND < List Collections.unmodifiableList(ArrayList) > :534(n$108); LOCKED(@f$1); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (n$108); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (n$107); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$4update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$109initial:org.junit.runners.model.Statement*; $T0_31 = n$110initial:void; $irvar1 = n$111initial:void; statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$112initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; n$107|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; n$106|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:n$107update:270, fChildren:n$106update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:@f$5formal(z)}formal(z):java.util.List( sub ); @f$2|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1formal, filteredChildren:n$108update:(z)270, testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$7 = null; @f$6 = null; (-1 < @f$5); @f$5 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$4none:java.util.List*( sub ); statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$2|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] in prop_iter_extend_ptsto lexp: &$irvar1 prop before: @f$6 = null; @f$7 = null; n$8 = old_this ; (-1 < @f$5); @f$5 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$106); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(n$107); UND < List ParentRunner.classRules() > :268(classRules); UND < List Collections.unmodifiableList(ArrayList) > :534(n$108); LOCKED(@f$1); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (n$108); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (n$107); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$4update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$109initial:org.junit.runners.model.Statement*; $T0_31 = n$110initial:void; $irvar1 = n$111initial:void; statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$112initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; n$107|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; n$106|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:n$107update:270, fChildren:n$106update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:@f$5formal(z)}formal(z):java.util.List( sub ); @f$2|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1formal, filteredChildren:n$108update:(z)270, testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$7 = null; @f$6 = null; (-1 < @f$5); @f$5 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$4none:java.util.List*( sub ); statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$2|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] prop list after: PROP 1 of 1: @f$6 = null; @f$7 = null; n$8 = old_this ; (-1 < @f$5); @f$5 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$106); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(n$107); UND < List ParentRunner.classRules() > :268(classRules); UND < List Collections.unmodifiableList(ArrayList) > :534(n$108); LOCKED(@f$1); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (n$108); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (n$107); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$4update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$109initial:org.junit.runners.model.Statement*; $T0_31 = n$110initial:void; $irvar1 = n$111initial:void; statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$112initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; n$107|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; n$106|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:n$107update:270, fChildren:n$106update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:@f$5formal(z)}formal(z):java.util.List( sub ); @f$2|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1formal, filteredChildren:n$108update:(z)270, testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$7 = null; @f$6 = null; (-1 < @f$5); @f$5 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$4none:java.util.List*( sub ); statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$2|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] Instruction Returns PROP 1 of 1: @f$6 = null; @f$7 = null; n$8 = old_this ; (-1 < @f$5); @f$5 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); UND < List ParentRunner.classRules() > :268(classRules); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(@f$1); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$4update:268:java.util.List*; $irvar0 = 0nullify:void; return = _t$5initial:org.junit.runners.model.Statement*; $T0_31 = _t$4initial:void; $irvar1 = n$10update:270:void; statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$3|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$2|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $irvar1|->{fAnnotations:_t$2update:270, fChildren:_t$3update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:@f$5formal(z)}formal(z):java.util.List( sub ); @f$2|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1formal, filteredChildren:_t$0update:(z)270, testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$7 = null; @f$6 = null; (-1 < @f$5); @f$5 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$4none:java.util.List*( sub ); statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$2|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] Instruction *&$irvar1:org.junit.runner.Description*=n$10 [line 270] in vpath_find exp:n$113 vpath_find: cannot find n$113 in vpath_find exp:n$10 vpath_find: cannot find n$10 .... Rearrangement Start .... Exp: &$irvar1 Prop: @f$8 = null; n$8 = old_this ; (-1 < @f$7); @f$7 != 1; @f$4 != null; @f$4 != ""; @f$3 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$113); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268(classRules); UND < Annotation[] Class.getAnnotations() > :216(n$114); UND < List Collections.unmodifiableList(ArrayList) > :534(n$115); LOCKED(@f$1); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (n$115); RET < Class TestClass.getJavaClass() > (@f$3); RET < String Class.getName() > (@f$4); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (n$114); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$6update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$116initial:org.junit.runners.model.Statement*; $T0_31 = n$117initial:void; $irvar1 = n$118initial:void; statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$119initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; n$113|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:n$114update:270, fChildren:n$113update:(z)270, fDisplayName:@f$4update:270, fTestClass:@f$3update:270, fUniqueId:@f$4update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:@f$7formal(z)}formal(z):java.util.List( sub ); @f$4|->{}formal:java.lang.String( sub ); @f$3|->{name:@f$4formal(z)}formal(z):java.lang.Class( sub ); @f$2|->{clazz:@f$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1formal, filteredChildren:n$115update:(z)270, testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$8 = null; (-1 < @f$7); @f$7 != 1; @f$4 != null; @f$4 != ""; @f$3 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$6none:java.util.List*( sub ); statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$7rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$4|->{}rearrange:(z)394:java.lang.String( sub ); @f$3|->{name:@f$4rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$2|->{clazz:@f$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] in prop_iter_extend_ptsto lexp: &$irvar1 prop before: @f$8 = null; n$8 = old_this ; (-1 < @f$7); @f$7 != 1; @f$4 != null; @f$4 != ""; @f$3 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$113); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268(classRules); UND < Annotation[] Class.getAnnotations() > :216(n$114); UND < List Collections.unmodifiableList(ArrayList) > :534(n$115); LOCKED(@f$1); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (n$115); RET < Class TestClass.getJavaClass() > (@f$3); RET < String Class.getName() > (@f$4); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (n$114); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$6update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$116initial:org.junit.runners.model.Statement*; $T0_31 = n$117initial:void; $irvar1 = n$118initial:void; statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$119initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; n$113|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:n$114update:270, fChildren:n$113update:(z)270, fDisplayName:@f$4update:270, fTestClass:@f$3update:270, fUniqueId:@f$4update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:@f$7formal(z)}formal(z):java.util.List( sub ); @f$4|->{}formal:java.lang.String( sub ); @f$3|->{name:@f$4formal(z)}formal(z):java.lang.Class( sub ); @f$2|->{clazz:@f$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1formal, filteredChildren:n$115update:(z)270, testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$8 = null; (-1 < @f$7); @f$7 != 1; @f$4 != null; @f$4 != ""; @f$3 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$6none:java.util.List*( sub ); statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$7rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$4|->{}rearrange:(z)394:java.lang.String( sub ); @f$3|->{name:@f$4rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$2|->{clazz:@f$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] prop list after: PROP 1 of 1: @f$8 = null; n$8 = old_this ; (-1 < @f$7); @f$7 != 1; @f$4 != null; @f$4 != ""; @f$3 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$113); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268(classRules); UND < Annotation[] Class.getAnnotations() > :216(n$114); UND < List Collections.unmodifiableList(ArrayList) > :534(n$115); LOCKED(@f$1); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (n$115); RET < Class TestClass.getJavaClass() > (@f$3); RET < String Class.getName() > (@f$4); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (n$114); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$6update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$116initial:org.junit.runners.model.Statement*; $T0_31 = n$117initial:void; $irvar1 = n$118initial:void; statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$119initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; n$113|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:n$114update:270, fChildren:n$113update:(z)270, fDisplayName:@f$4update:270, fTestClass:@f$3update:270, fUniqueId:@f$4update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:@f$7formal(z)}formal(z):java.util.List( sub ); @f$4|->{}formal:java.lang.String( sub ); @f$3|->{name:@f$4formal(z)}formal(z):java.lang.Class( sub ); @f$2|->{clazz:@f$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1formal, filteredChildren:n$115update:(z)270, testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$8 = null; (-1 < @f$7); @f$7 != 1; @f$4 != null; @f$4 != ""; @f$3 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$6none:java.util.List*( sub ); statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$7rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$4|->{}rearrange:(z)394:java.lang.String( sub ); @f$3|->{name:@f$4rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$2|->{clazz:@f$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] Instruction Returns PROP 1 of 1: @f$8 = null; n$8 = old_this ; (-1 < @f$7); @f$7 != 1; @f$4 != null; @f$4 != ""; @f$3 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268(classRules); UND < Annotation[] Class.getAnnotations() > :216(_t$2); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(@f$1); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Class TestClass.getJavaClass() > (@f$3); RET < String Class.getName() > (@f$4); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$6update:268:java.util.List*; $irvar0 = 0nullify:void; return = _t$5initial:org.junit.runners.model.Statement*; $T0_31 = _t$4initial:void; $irvar1 = n$10update:270:void; statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$3|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $irvar1|->{fAnnotations:_t$2update:270, fChildren:_t$3update:(z)270, fDisplayName:@f$4update:270, fTestClass:@f$3update:270, fUniqueId:@f$4update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:@f$7formal(z)}formal(z):java.util.List( sub ); @f$4|->{}formal:java.lang.String( sub ); @f$3|->{name:@f$4formal(z)}formal(z):java.lang.Class( sub ); @f$2|->{clazz:@f$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1formal, filteredChildren:_t$0update:(z)270, testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$8 = null; (-1 < @f$7); @f$7 != 1; @f$4 != null; @f$4 != ""; @f$3 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$6none:java.util.List*( sub ); statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$7rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$4|->{}rearrange:(z)394:java.lang.String( sub ); @f$3|->{name:@f$4rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$2|->{clazz:@f$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] Instruction *&$irvar1:org.junit.runner.Description*=n$10 [line 270] in vpath_find exp:n$120 vpath_find: cannot find n$120 in vpath_find exp:n$10 vpath_find: cannot find n$10 in vpath_find exp:n$121 vpath_find: cannot find n$121 .... Rearrangement Start .... Exp: &$irvar1 Prop: @f$6 = null; n$8 = old_this ; (-1 < @f$5); @f$5 != 1; @f$1 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$120); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(n$121); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (@f$1); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (n$121); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$4update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$122initial:org.junit.runners.model.Statement*; $T0_31 = n$123initial:void; $irvar1 = n$124initial:void; statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$125initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; n$121|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; n$120|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:n$121update:270, fChildren:n$120update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:@f$5formal(z)}formal(z):java.util.List( sub ); @f$2|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:@f$1formal(z), testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$6 = null; (-1 < @f$5); @f$5 != 1; @f$1 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$4none:java.util.List*( sub ); statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$2|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:400:java.util.List( sub ); old_this|->{filteredChildren:@f$1rearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] in prop_iter_extend_ptsto lexp: &$irvar1 prop before: @f$6 = null; n$8 = old_this ; (-1 < @f$5); @f$5 != 1; @f$1 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$120); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(n$121); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (@f$1); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (n$121); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$4update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$122initial:org.junit.runners.model.Statement*; $T0_31 = n$123initial:void; $irvar1 = n$124initial:void; statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$125initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; n$121|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; n$120|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:n$121update:270, fChildren:n$120update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:@f$5formal(z)}formal(z):java.util.List( sub ); @f$2|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:@f$1formal(z), testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$6 = null; (-1 < @f$5); @f$5 != 1; @f$1 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$4none:java.util.List*( sub ); statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$2|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:400:java.util.List( sub ); old_this|->{filteredChildren:@f$1rearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] prop list after: PROP 1 of 1: @f$6 = null; n$8 = old_this ; (-1 < @f$5); @f$5 != 1; @f$1 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$120); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(n$121); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (@f$1); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (n$121); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$4update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$122initial:org.junit.runners.model.Statement*; $T0_31 = n$123initial:void; $irvar1 = n$124initial:void; statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$125initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; n$121|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; n$120|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:n$121update:270, fChildren:n$120update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:@f$5formal(z)}formal(z):java.util.List( sub ); @f$2|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:@f$1formal(z), testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$6 = null; (-1 < @f$5); @f$5 != 1; @f$1 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$4none:java.util.List*( sub ); statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$2|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:400:java.util.List( sub ); old_this|->{filteredChildren:@f$1rearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] Instruction Returns PROP 1 of 1: @f$6 = null; n$8 = old_this ; (-1 < @f$5); @f$5 != 1; @f$1 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$1); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (@f$1); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$4update:268:java.util.List*; $irvar0 = 0nullify:void; return = _t$4initial:org.junit.runners.model.Statement*; $T0_31 = _t$3initial:void; $irvar1 = n$10update:270:void; statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$2|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$1|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $irvar1|->{fAnnotations:_t$1update:270, fChildren:_t$2update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:@f$5formal(z)}formal(z):java.util.List( sub ); @f$2|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:@f$1formal(z), testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$6 = null; (-1 < @f$5); @f$5 != 1; @f$1 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$4none:java.util.List*( sub ); statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$2|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:400:java.util.List( sub ); old_this|->{filteredChildren:@f$1rearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] Instruction *&$irvar1:org.junit.runner.Description*=n$10 [line 270] in vpath_find exp:n$126 vpath_find: cannot find n$126 in vpath_find exp:n$10 vpath_find: cannot find n$10 .... Rearrangement Start .... Exp: &$irvar1 Prop: n$8 = old_this ; (-1 < @f$7); @f$7 != 1; @f$4 != null; @f$4 != ""; @f$3 != null; @f$1 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$126); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268(classRules); UND < Annotation[] Class.getAnnotations() > :216(n$127); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (@f$1); RET < Class TestClass.getJavaClass() > (@f$3); RET < String Class.getName() > (@f$4); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (n$127); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$6update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$128initial:org.junit.runners.model.Statement*; $T0_31 = n$129initial:void; $irvar1 = n$130initial:void; statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$131initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; n$126|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:n$127update:270, fChildren:n$126update:(z)270, fDisplayName:@f$4update:270, fTestClass:@f$3update:270, fUniqueId:@f$4update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:@f$7formal(z)}formal(z):java.util.List( sub ); @f$4|->{}formal:java.lang.String( sub ); @f$3|->{name:@f$4formal(z)}formal(z):java.lang.Class( sub ); @f$2|->{clazz:@f$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:@f$1formal(z), testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint (-1 < @f$7); @f$7 != 1; @f$4 != null; @f$4 != ""; @f$3 != null; @f$1 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$6none:java.util.List*( sub ); statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$7rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$4|->{}rearrange:(z)394:java.lang.String( sub ); @f$3|->{name:@f$4rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$2|->{clazz:@f$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:400:java.util.List( sub ); old_this|->{filteredChildren:@f$1rearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] in prop_iter_extend_ptsto lexp: &$irvar1 prop before: n$8 = old_this ; (-1 < @f$7); @f$7 != 1; @f$4 != null; @f$4 != ""; @f$3 != null; @f$1 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$126); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268(classRules); UND < Annotation[] Class.getAnnotations() > :216(n$127); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (@f$1); RET < Class TestClass.getJavaClass() > (@f$3); RET < String Class.getName() > (@f$4); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (n$127); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$6update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$128initial:org.junit.runners.model.Statement*; $T0_31 = n$129initial:void; $irvar1 = n$130initial:void; statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$131initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; n$126|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:n$127update:270, fChildren:n$126update:(z)270, fDisplayName:@f$4update:270, fTestClass:@f$3update:270, fUniqueId:@f$4update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:@f$7formal(z)}formal(z):java.util.List( sub ); @f$4|->{}formal:java.lang.String( sub ); @f$3|->{name:@f$4formal(z)}formal(z):java.lang.Class( sub ); @f$2|->{clazz:@f$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:@f$1formal(z), testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint (-1 < @f$7); @f$7 != 1; @f$4 != null; @f$4 != ""; @f$3 != null; @f$1 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$6none:java.util.List*( sub ); statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$7rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$4|->{}rearrange:(z)394:java.lang.String( sub ); @f$3|->{name:@f$4rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$2|->{clazz:@f$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:400:java.util.List( sub ); old_this|->{filteredChildren:@f$1rearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] prop list after: PROP 1 of 1: n$8 = old_this ; (-1 < @f$7); @f$7 != 1; @f$4 != null; @f$4 != ""; @f$3 != null; @f$1 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$126); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268(classRules); UND < Annotation[] Class.getAnnotations() > :216(n$127); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (@f$1); RET < Class TestClass.getJavaClass() > (@f$3); RET < String Class.getName() > (@f$4); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (n$127); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$6update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$128initial:org.junit.runners.model.Statement*; $T0_31 = n$129initial:void; $irvar1 = n$130initial:void; statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$131initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; n$126|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:n$127update:270, fChildren:n$126update:(z)270, fDisplayName:@f$4update:270, fTestClass:@f$3update:270, fUniqueId:@f$4update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:@f$7formal(z)}formal(z):java.util.List( sub ); @f$4|->{}formal:java.lang.String( sub ); @f$3|->{name:@f$4formal(z)}formal(z):java.lang.Class( sub ); @f$2|->{clazz:@f$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:@f$1formal(z), testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint (-1 < @f$7); @f$7 != 1; @f$4 != null; @f$4 != ""; @f$3 != null; @f$1 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$6none:java.util.List*( sub ); statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$7rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$4|->{}rearrange:(z)394:java.lang.String( sub ); @f$3|->{name:@f$4rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$2|->{clazz:@f$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:400:java.util.List( sub ); old_this|->{filteredChildren:@f$1rearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] Instruction Returns PROP 1 of 1: n$8 = old_this ; (-1 < @f$7); @f$7 != 1; @f$4 != null; @f$4 != ""; @f$3 != null; @f$1 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268(classRules); UND < Annotation[] Class.getAnnotations() > :216(_t$1); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (@f$1); RET < Class TestClass.getJavaClass() > (@f$3); RET < String Class.getName() > (@f$4); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$6update:268:java.util.List*; $irvar0 = 0nullify:void; return = _t$4initial:org.junit.runners.model.Statement*; $T0_31 = _t$3initial:void; $irvar1 = n$10update:270:void; statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$2|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $irvar1|->{fAnnotations:_t$1update:270, fChildren:_t$2update:(z)270, fDisplayName:@f$4update:270, fTestClass:@f$3update:270, fUniqueId:@f$4update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:@f$7formal(z)}formal(z):java.util.List( sub ); @f$4|->{}formal:java.lang.String( sub ); @f$3|->{name:@f$4formal(z)}formal(z):java.lang.Class( sub ); @f$2|->{clazz:@f$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:@f$1formal(z), testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint (-1 < @f$7); @f$7 != 1; @f$4 != null; @f$4 != ""; @f$3 != null; @f$1 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$6none:java.util.List*( sub ); statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$7rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$4|->{}rearrange:(z)394:java.lang.String( sub ); @f$3|->{name:@f$4rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$2|->{clazz:@f$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:400:java.util.List( sub ); old_this|->{filteredChildren:@f$1rearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] Skipping instr *&$irvar1:org.junit.runner.Description*=n$10 [line 270] due to exception Skipping instr *&$irvar1:org.junit.runner.Description*=n$10 [line 270] due to exception Skipping instr *&$irvar1:org.junit.runner.Description*=n$10 [line 270] due to exception Skipping instr *&$irvar1:org.junit.runner.Description*=n$10 [line 270] due to exception Skipping instr *&$irvar1:org.junit.runner.Description*=n$10 [line 270] due to exception Instruction NULLIFY(&this); [line 270] in vpath_find exp:_t$3 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$3 in vpath_find exp:n$10 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find n$10 in vpath_find exp:_t$2 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$2 Instruction Returns PROP 1 of 1: @f$6 = null; @f$7 = null; n$8 = old_this ; (-1 < @f$5); @f$5 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); UND < List ParentRunner.classRules() > :268(classRules); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(@f$1); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$4update:268:java.util.List*; $irvar0 = 0nullify:void; return = _t$5initial:org.junit.runners.model.Statement*; $T0_31 = _t$4initial:void; $irvar1 = n$10update:270:void; statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$3|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$2|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $irvar1|->{fAnnotations:_t$2update:270, fChildren:_t$3update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:@f$5formal(z)}formal(z):java.util.List( sub ); @f$2|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1formal, filteredChildren:_t$0update:(z)270, testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$7 = null; @f$6 = null; (-1 < @f$5); @f$5 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$4none:java.util.List*( sub ); statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$2|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] Instruction NULLIFY(&this); [line 270] in vpath_find exp:_t$3 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$3 in vpath_find exp:n$10 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find n$10 Instruction Returns PROP 1 of 1: @f$8 = null; n$8 = old_this ; (-1 < @f$7); @f$7 != 1; @f$4 != null; @f$4 != ""; @f$3 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268(classRules); UND < Annotation[] Class.getAnnotations() > :216(_t$2); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(@f$1); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Class TestClass.getJavaClass() > (@f$3); RET < String Class.getName() > (@f$4); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$6update:268:java.util.List*; $irvar0 = 0nullify:void; return = _t$5initial:org.junit.runners.model.Statement*; $T0_31 = _t$4initial:void; $irvar1 = n$10update:270:void; statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$3|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $irvar1|->{fAnnotations:_t$2update:270, fChildren:_t$3update:(z)270, fDisplayName:@f$4update:270, fTestClass:@f$3update:270, fUniqueId:@f$4update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:@f$7formal(z)}formal(z):java.util.List( sub ); @f$4|->{}formal:java.lang.String( sub ); @f$3|->{name:@f$4formal(z)}formal(z):java.lang.Class( sub ); @f$2|->{clazz:@f$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1formal, filteredChildren:_t$0update:(z)270, testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$8 = null; (-1 < @f$7); @f$7 != 1; @f$4 != null; @f$4 != ""; @f$3 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$6none:java.util.List*( sub ); statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$7rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$4|->{}rearrange:(z)394:java.lang.String( sub ); @f$3|->{name:@f$4rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$2|->{clazz:@f$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] Instruction NULLIFY(&this); [line 270] in vpath_find exp:_t$2 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$2 in vpath_find exp:n$10 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find n$10 in vpath_find exp:_t$1 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$1 Instruction Returns PROP 1 of 1: @f$6 = null; n$8 = old_this ; (-1 < @f$5); @f$5 != 1; @f$1 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$1); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (@f$1); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$4update:268:java.util.List*; $irvar0 = 0nullify:void; return = _t$4initial:org.junit.runners.model.Statement*; $T0_31 = _t$3initial:void; $irvar1 = n$10update:270:void; statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$2|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$1|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $irvar1|->{fAnnotations:_t$1update:270, fChildren:_t$2update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:@f$5formal(z)}formal(z):java.util.List( sub ); @f$2|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:@f$1formal(z), testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$6 = null; (-1 < @f$5); @f$5 != 1; @f$1 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$4none:java.util.List*( sub ); statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$2|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:400:java.util.List( sub ); old_this|->{filteredChildren:@f$1rearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] Instruction NULLIFY(&this); [line 270] in vpath_find exp:_t$2 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$2 in vpath_find exp:n$10 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find n$10 Instruction Returns PROP 1 of 1: n$8 = old_this ; (-1 < @f$7); @f$7 != 1; @f$4 != null; @f$4 != ""; @f$3 != null; @f$1 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268(classRules); UND < Annotation[] Class.getAnnotations() > :216(_t$1); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (@f$1); RET < Class TestClass.getJavaClass() > (@f$3); RET < String Class.getName() > (@f$4); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$6update:268:java.util.List*; $irvar0 = 0nullify:void; return = _t$4initial:org.junit.runners.model.Statement*; $T0_31 = _t$3initial:void; $irvar1 = n$10update:270:void; statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$2|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $irvar1|->{fAnnotations:_t$1update:270, fChildren:_t$2update:(z)270, fDisplayName:@f$4update:270, fTestClass:@f$3update:270, fUniqueId:@f$4update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:@f$7formal(z)}formal(z):java.util.List( sub ); @f$4|->{}formal:java.lang.String( sub ); @f$3|->{name:@f$4formal(z)}formal(z):java.lang.Class( sub ); @f$2|->{clazz:@f$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:@f$1formal(z), testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint (-1 < @f$7); @f$7 != 1; @f$4 != null; @f$4 != ""; @f$3 != null; @f$1 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$6none:java.util.List*( sub ); statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$7rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$4|->{}rearrange:(z)394:java.lang.String( sub ); @f$3|->{name:@f$4rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$2|->{clazz:@f$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:400:java.util.List( sub ); old_this|->{filteredChildren:@f$1rearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] Instruction NULLIFY(&this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: n$8 = old_this ; (-1 < @f$1); @f$5 != null; @f$4 != null; @f$4 != ""; @f$3 != null; @f$1 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (n$10); RET < Class TestClass.getJavaClass() > (@f$5); RET < String Class.getName() > (@f$4); RET < TestClass ParentRunner.getTestClass() > (@f$6); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$7formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; old_this|->{filteredChildren:@f$3formal(z), testClass:@f$6formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); @f$6|->{clazz:@f$5formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$5|->{name:@f$4formal(z)}formal(z):java.lang.Class( sub ); @f$4|->{}formal:java.lang.String( sub ); @f$3|->{}formal:java.util.List( sub ); classRules|->{mIsEmpty:@f$1formal(z)}formal(z):java.util.List( sub ) [footprint (-1 < @f$1); @f$5 != null; @f$4 != null; @f$4 != ""; @f$3 != null; @f$1 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$7formal:org.junit.runners.ParentRunner*( sub ) ; old_this|->{filteredChildren:@f$3rearrange:(z)530, testClass:@f$6rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); @f$6|->{clazz:@f$5rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$5|->{name:@f$4rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$4|->{}rearrange:(z)394:java.lang.String( sub ); @f$3|->{}rearrange:400:java.util.List( sub ); classRules|->{mIsEmpty:@f$1rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] Instruction NULLIFY(&this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: @f$8 = null; n$8 = old_this ; (-1 < @f$1); @f$5 != null; @f$4 != null; @f$4 != ""; @f$1 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (n$10); RET < Class TestClass.getJavaClass() > (@f$5); RET < String Class.getName() > (@f$4); RET < TestClass ParentRunner.getTestClass() > (@f$6); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$7formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; old_this|->{childrenLock:@f$3formal, filteredChildren:nullformal(z), testClass:@f$6formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); @f$6|->{clazz:@f$5formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$5|->{name:@f$4formal(z)}formal(z):java.lang.Class( sub ); @f$4|->{}formal:java.lang.String( sub ); @f$3|->{}formal(z):java.util.concurrent.locks.Lock( sub ); classRules|->{mIsEmpty:@f$1formal(z)}formal(z):java.util.List( sub ) [footprint @f$8 = null; (-1 < @f$1); @f$5 != null; @f$4 != null; @f$4 != ""; @f$1 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$7formal:org.junit.runners.ParentRunner*( sub ) ; old_this|->{childrenLock:@f$3rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$6rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); @f$6|->{clazz:@f$5rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$5|->{name:@f$4rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$4|->{}rearrange:(z)394:java.lang.String( sub ); @f$3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); classRules|->{mIsEmpty:@f$1rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] Instruction NULLIFY(&this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: @f$6 = ""; n$8 = old_this ; (-1 < @f$1); @f$3 != null; @f$1 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (n$10); RET < Class TestClass.getJavaClass() > (@f$3); RET < TestClass ParentRunner.getTestClass() > (@f$4); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$5formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; old_this|->{testClass:@f$4formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); @f$4|->{clazz:@f$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$3|->{name:""formal(z)}formal(z):java.lang.Class( sub ); classRules|->{mIsEmpty:@f$1formal(z)}formal(z):java.util.List( sub ) [footprint @f$6 = ""; (-1 < @f$1); @f$3 != null; @f$1 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$5formal:org.junit.runners.ParentRunner*( sub ) ; old_this|->{testClass:@f$4rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); @f$4|->{clazz:@f$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$3|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); classRules|->{mIsEmpty:@f$1rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] Instruction NULLIFY(&this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: @f$6 = null; n$8 = old_this ; (-1 < @f$1); @f$3 != null; @f$1 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (n$10); RET < TestClass ParentRunner.getTestClass() > (@f$4); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$5formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; old_this|->{filteredChildren:@f$3formal(z), testClass:@f$4formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); @f$4|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$3|->{}formal:java.util.List( sub ); classRules|->{mIsEmpty:@f$1formal(z)}formal(z):java.util.List( sub ) [footprint @f$6 = null; (-1 < @f$1); @f$3 != null; @f$1 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$5formal:org.junit.runners.ParentRunner*( sub ) ; old_this|->{filteredChildren:@f$3rearrange:(z)530, testClass:@f$4rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); @f$4|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$3|->{}rearrange:400:java.util.List( sub ); classRules|->{mIsEmpty:@f$1rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] Instruction NULLIFY(&this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: @f$6 = null; @f$7 = null; n$8 = old_this ; (-1 < @f$1); @f$1 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (n$10); RET < TestClass ParentRunner.getTestClass() > (@f$4); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$5formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; old_this|->{childrenLock:@f$3formal, filteredChildren:nullformal(z), testClass:@f$4formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); @f$4|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$3|->{}formal(z):java.util.concurrent.locks.Lock( sub ); classRules|->{mIsEmpty:@f$1formal(z)}formal(z):java.util.List( sub ) [footprint @f$7 = null; @f$6 = null; (-1 < @f$1); @f$1 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$5formal:org.junit.runners.ParentRunner*( sub ) ; old_this|->{childrenLock:@f$3rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$4rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); @f$4|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); classRules|->{mIsEmpty:@f$1rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] Instruction EXIT_SCOPE(_,n$8,n$10,this); [line 270] in vpath_find exp:_t$3 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$3 in vpath_find exp:n$10 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find n$10 in vpath_find exp:_t$2 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$2 Instruction Returns PROP 1 of 1: @f$6 = null; @f$7 = null ; (-1 < @f$5); @f$5 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$4); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); UND < List ParentRunner.classRules() > :268(classRules); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(@f$1); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$3); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$4update:268:java.util.List*; $irvar0 = 0nullify:void; return = _t$6initial:org.junit.runners.model.Statement*; $T0_31 = _t$5initial:void; $irvar1 = _t$2update:270:void; statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$4|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$3|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $irvar1|->{fAnnotations:_t$3update:270, fChildren:_t$4update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:@f$5formal(z)}formal(z):java.util.List( sub ); @f$2|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1formal, filteredChildren:_t$0update:(z)270, testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$7 = null; @f$6 = null; (-1 < @f$5); @f$5 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$4none:java.util.List*( sub ); statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$2|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] Instruction EXIT_SCOPE(_,n$8,n$10,this); [line 270] in vpath_find exp:_t$3 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$3 in vpath_find exp:n$10 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find n$10 Instruction Returns PROP 1 of 1: @f$8 = null ; (-1 < @f$7); @f$7 != 1; @f$4 != null; @f$4 != ""; @f$3 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$4); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268(classRules); UND < Annotation[] Class.getAnnotations() > :216(_t$3); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(@f$1); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Class TestClass.getJavaClass() > (@f$3); RET < String Class.getName() > (@f$4); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$3); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$6update:268:java.util.List*; $irvar0 = 0nullify:void; return = _t$6initial:org.junit.runners.model.Statement*; $T0_31 = _t$5initial:void; $irvar1 = _t$2update:270:void; statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$4|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $irvar1|->{fAnnotations:_t$3update:270, fChildren:_t$4update:(z)270, fDisplayName:@f$4update:270, fTestClass:@f$3update:270, fUniqueId:@f$4update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:@f$7formal(z)}formal(z):java.util.List( sub ); @f$4|->{}formal:java.lang.String( sub ); @f$3|->{name:@f$4formal(z)}formal(z):java.lang.Class( sub ); @f$2|->{clazz:@f$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1formal, filteredChildren:_t$0update:(z)270, testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$8 = null; (-1 < @f$7); @f$7 != 1; @f$4 != null; @f$4 != ""; @f$3 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$6none:java.util.List*( sub ); statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$7rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$4|->{}rearrange:(z)394:java.lang.String( sub ); @f$3|->{name:@f$4rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$2|->{clazz:@f$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] Instruction EXIT_SCOPE(_,n$8,n$10,this); [line 270] in vpath_find exp:_t$2 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$2 in vpath_find exp:n$10 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find n$10 in vpath_find exp:_t$1 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$1 Instruction Returns PROP 1 of 1: @f$6 = null ; (-1 < @f$5); @f$5 != 1; @f$1 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (@f$1); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$4update:268:java.util.List*; $irvar0 = 0nullify:void; return = _t$5initial:org.junit.runners.model.Statement*; $T0_31 = _t$4initial:void; $irvar1 = _t$1update:270:void; statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$3|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$2|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $irvar1|->{fAnnotations:_t$2update:270, fChildren:_t$3update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:@f$5formal(z)}formal(z):java.util.List( sub ); @f$2|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:@f$1formal(z), testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$6 = null; (-1 < @f$5); @f$5 != 1; @f$1 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$4none:java.util.List*( sub ); statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$2|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:400:java.util.List( sub ); old_this|->{filteredChildren:@f$1rearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] Instruction EXIT_SCOPE(_,n$8,n$10,this); [line 270] in vpath_find exp:_t$2 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$2 in vpath_find exp:n$10 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find n$10 Instruction Returns PROP 1 of 1: (-1 < @f$7); @f$7 != 1; @f$4 != null; @f$4 != ""; @f$3 != null; @f$1 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268(classRules); UND < Annotation[] Class.getAnnotations() > :216(_t$2); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (@f$1); RET < Class TestClass.getJavaClass() > (@f$3); RET < String Class.getName() > (@f$4); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$6update:268:java.util.List*; $irvar0 = 0nullify:void; return = _t$5initial:org.junit.runners.model.Statement*; $T0_31 = _t$4initial:void; $irvar1 = _t$1update:270:void; statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$3|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $irvar1|->{fAnnotations:_t$2update:270, fChildren:_t$3update:(z)270, fDisplayName:@f$4update:270, fTestClass:@f$3update:270, fUniqueId:@f$4update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:@f$7formal(z)}formal(z):java.util.List( sub ); @f$4|->{}formal:java.lang.String( sub ); @f$3|->{name:@f$4formal(z)}formal(z):java.lang.Class( sub ); @f$2|->{clazz:@f$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:@f$1formal(z), testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint (-1 < @f$7); @f$7 != 1; @f$4 != null; @f$4 != ""; @f$3 != null; @f$1 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$6none:java.util.List*( sub ); statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$7rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$4|->{}rearrange:(z)394:java.lang.String( sub ); @f$3|->{name:@f$4rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$2|->{clazz:@f$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:400:java.util.List( sub ); old_this|->{filteredChildren:@f$1rearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] Instruction EXIT_SCOPE(_,n$8,n$10,this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: @f$8 = null ; (-1 < @f$1); @f$5 != null; @f$4 != null; @f$4 != ""; @f$1 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (_t$4); RET < Class TestClass.getJavaClass() > (@f$5); RET < String Class.getName() > (@f$4); RET < TestClass ParentRunner.getTestClass() > (@f$6); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$7formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; old_this|->{childrenLock:@f$3formal, filteredChildren:nullformal(z), testClass:@f$6formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); @f$6|->{clazz:@f$5formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$5|->{name:@f$4formal(z)}formal(z):java.lang.Class( sub ); @f$4|->{}formal:java.lang.String( sub ); @f$3|->{}formal(z):java.util.concurrent.locks.Lock( sub ); classRules|->{mIsEmpty:@f$1formal(z)}formal(z):java.util.List( sub ) [footprint @f$8 = null; (-1 < @f$1); @f$5 != null; @f$4 != null; @f$4 != ""; @f$1 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$7formal:org.junit.runners.ParentRunner*( sub ) ; old_this|->{childrenLock:@f$3rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$6rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); @f$6|->{clazz:@f$5rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$5|->{name:@f$4rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$4|->{}rearrange:(z)394:java.lang.String( sub ); @f$3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); classRules|->{mIsEmpty:@f$1rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] Instruction EXIT_SCOPE(_,n$8,n$10,this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: (-1 < @f$1); @f$5 != null; @f$4 != null; @f$4 != ""; @f$3 != null; @f$1 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (_t$4); RET < Class TestClass.getJavaClass() > (@f$5); RET < String Class.getName() > (@f$4); RET < TestClass ParentRunner.getTestClass() > (@f$6); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$7formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; old_this|->{filteredChildren:@f$3formal(z), testClass:@f$6formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); @f$6|->{clazz:@f$5formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$5|->{name:@f$4formal(z)}formal(z):java.lang.Class( sub ); @f$4|->{}formal:java.lang.String( sub ); @f$3|->{}formal:java.util.List( sub ); classRules|->{mIsEmpty:@f$1formal(z)}formal(z):java.util.List( sub ) [footprint (-1 < @f$1); @f$5 != null; @f$4 != null; @f$4 != ""; @f$3 != null; @f$1 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$7formal:org.junit.runners.ParentRunner*( sub ) ; old_this|->{filteredChildren:@f$3rearrange:(z)530, testClass:@f$6rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); @f$6|->{clazz:@f$5rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$5|->{name:@f$4rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$4|->{}rearrange:(z)394:java.lang.String( sub ); @f$3|->{}rearrange:400:java.util.List( sub ); classRules|->{mIsEmpty:@f$1rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] Instruction EXIT_SCOPE(_,n$8,n$10,this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: @f$6 = null; @f$7 = null ; (-1 < @f$1); @f$1 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (_t$4); RET < TestClass ParentRunner.getTestClass() > (@f$4); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$5formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; old_this|->{childrenLock:@f$3formal, filteredChildren:nullformal(z), testClass:@f$4formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); @f$4|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$3|->{}formal(z):java.util.concurrent.locks.Lock( sub ); classRules|->{mIsEmpty:@f$1formal(z)}formal(z):java.util.List( sub ) [footprint @f$7 = null; @f$6 = null; (-1 < @f$1); @f$1 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$5formal:org.junit.runners.ParentRunner*( sub ) ; old_this|->{childrenLock:@f$3rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$4rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); @f$4|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); classRules|->{mIsEmpty:@f$1rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] Instruction EXIT_SCOPE(_,n$8,n$10,this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: @f$6 = null ; (-1 < @f$1); @f$3 != null; @f$1 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (_t$4); RET < TestClass ParentRunner.getTestClass() > (@f$4); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$5formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; old_this|->{filteredChildren:@f$3formal(z), testClass:@f$4formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); @f$4|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$3|->{}formal:java.util.List( sub ); classRules|->{mIsEmpty:@f$1formal(z)}formal(z):java.util.List( sub ) [footprint @f$6 = null; (-1 < @f$1); @f$3 != null; @f$1 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$5formal:org.junit.runners.ParentRunner*( sub ) ; old_this|->{filteredChildren:@f$3rearrange:(z)530, testClass:@f$4rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); @f$4|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$3|->{}rearrange:400:java.util.List( sub ); classRules|->{mIsEmpty:@f$1rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] Instruction EXIT_SCOPE(_,n$8,n$10,this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: @f$6 = "" ; (-1 < @f$1); @f$3 != null; @f$1 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (_t$4); RET < Class TestClass.getJavaClass() > (@f$3); RET < TestClass ParentRunner.getTestClass() > (@f$4); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$5formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; old_this|->{testClass:@f$4formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); @f$4|->{clazz:@f$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$3|->{name:""formal(z)}formal(z):java.lang.Class( sub ); classRules|->{mIsEmpty:@f$1formal(z)}formal(z):java.util.List( sub ) [footprint @f$6 = ""; (-1 < @f$1); @f$3 != null; @f$1 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$5formal:org.junit.runners.ParentRunner*( sub ) ; old_this|->{testClass:@f$4rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); @f$4|->{clazz:@f$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$3|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); classRules|->{mIsEmpty:@f$1rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] .... After Symbolic Execution .... PROP 1 of 9: @f$6 = null; @f$7 = null ; (-1 < @f$5); @f$5 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$4); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); UND < List ParentRunner.classRules() > :268(classRules); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(@f$1); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$3); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$4update:268:java.util.List*; $irvar0 = 0nullify:void; return = _t$6initial:org.junit.runners.model.Statement*; $T0_31 = _t$5initial:void; $irvar1 = _t$2update:270:void; statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$4|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$3|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $irvar1|->{fAnnotations:_t$3update:270, fChildren:_t$4update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:@f$5formal(z)}formal(z):java.util.List( sub ); @f$2|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1formal, filteredChildren:_t$0update:(z)270, testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$7 = null; @f$6 = null; (-1 < @f$5); @f$5 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$4none:java.util.List*( sub ); statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$2|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] PROP 2 of 9: @f$8 = null ; (-1 < @f$7); @f$7 != 1; @f$4 != null; @f$4 != ""; @f$3 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$4); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268(classRules); UND < Annotation[] Class.getAnnotations() > :216(_t$3); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(@f$1); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Class TestClass.getJavaClass() > (@f$3); RET < String Class.getName() > (@f$4); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$3); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$6update:268:java.util.List*; $irvar0 = 0nullify:void; return = _t$6initial:org.junit.runners.model.Statement*; $T0_31 = _t$5initial:void; $irvar1 = _t$2update:270:void; statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$4|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $irvar1|->{fAnnotations:_t$3update:270, fChildren:_t$4update:(z)270, fDisplayName:@f$4update:270, fTestClass:@f$3update:270, fUniqueId:@f$4update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:@f$7formal(z)}formal(z):java.util.List( sub ); @f$4|->{}formal:java.lang.String( sub ); @f$3|->{name:@f$4formal(z)}formal(z):java.lang.Class( sub ); @f$2|->{clazz:@f$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1formal, filteredChildren:_t$0update:(z)270, testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$8 = null; (-1 < @f$7); @f$7 != 1; @f$4 != null; @f$4 != ""; @f$3 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$6none:java.util.List*( sub ); statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$7rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$4|->{}rearrange:(z)394:java.lang.String( sub ); @f$3|->{name:@f$4rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$2|->{clazz:@f$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] PROP 3 of 9: @f$6 = null ; (-1 < @f$5); @f$5 != 1; @f$1 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (@f$1); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$4update:268:java.util.List*; $irvar0 = 0nullify:void; return = _t$5initial:org.junit.runners.model.Statement*; $T0_31 = _t$4initial:void; $irvar1 = _t$1update:270:void; statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$3|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$2|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $irvar1|->{fAnnotations:_t$2update:270, fChildren:_t$3update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:@f$5formal(z)}formal(z):java.util.List( sub ); @f$2|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:@f$1formal(z), testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$6 = null; (-1 < @f$5); @f$5 != 1; @f$1 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$4none:java.util.List*( sub ); statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$2|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:400:java.util.List( sub ); old_this|->{filteredChildren:@f$1rearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] PROP 4 of 9: (-1 < @f$7); @f$7 != 1; @f$4 != null; @f$4 != ""; @f$3 != null; @f$1 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268(classRules); UND < Annotation[] Class.getAnnotations() > :216(_t$2); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (@f$1); RET < Class TestClass.getJavaClass() > (@f$3); RET < String Class.getName() > (@f$4); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$6update:268:java.util.List*; $irvar0 = 0nullify:void; return = _t$5initial:org.junit.runners.model.Statement*; $T0_31 = _t$4initial:void; $irvar1 = _t$1update:270:void; statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$3|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $irvar1|->{fAnnotations:_t$2update:270, fChildren:_t$3update:(z)270, fDisplayName:@f$4update:270, fTestClass:@f$3update:270, fUniqueId:@f$4update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:@f$7formal(z)}formal(z):java.util.List( sub ); @f$4|->{}formal:java.lang.String( sub ); @f$3|->{name:@f$4formal(z)}formal(z):java.lang.Class( sub ); @f$2|->{clazz:@f$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:@f$1formal(z), testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint (-1 < @f$7); @f$7 != 1; @f$4 != null; @f$4 != ""; @f$3 != null; @f$1 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$6none:java.util.List*( sub ); statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$7rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$4|->{}rearrange:(z)394:java.lang.String( sub ); @f$3|->{name:@f$4rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$2|->{clazz:@f$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:400:java.util.List( sub ); old_this|->{filteredChildren:@f$1rearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] PROP 5 of 9: @f$8 = null ; (-1 < @f$1); @f$5 != null; @f$4 != null; @f$4 != ""; @f$1 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (_t$4); RET < Class TestClass.getJavaClass() > (@f$5); RET < String Class.getName() > (@f$4); RET < TestClass ParentRunner.getTestClass() > (@f$6); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$7formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; old_this|->{childrenLock:@f$3formal, filteredChildren:nullformal(z), testClass:@f$6formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); @f$6|->{clazz:@f$5formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$5|->{name:@f$4formal(z)}formal(z):java.lang.Class( sub ); @f$4|->{}formal:java.lang.String( sub ); @f$3|->{}formal(z):java.util.concurrent.locks.Lock( sub ); classRules|->{mIsEmpty:@f$1formal(z)}formal(z):java.util.List( sub ) [footprint @f$8 = null; (-1 < @f$1); @f$5 != null; @f$4 != null; @f$4 != ""; @f$1 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$7formal:org.junit.runners.ParentRunner*( sub ) ; old_this|->{childrenLock:@f$3rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$6rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); @f$6|->{clazz:@f$5rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$5|->{name:@f$4rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$4|->{}rearrange:(z)394:java.lang.String( sub ); @f$3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); classRules|->{mIsEmpty:@f$1rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] PROP 6 of 9: (-1 < @f$1); @f$5 != null; @f$4 != null; @f$4 != ""; @f$3 != null; @f$1 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (_t$4); RET < Class TestClass.getJavaClass() > (@f$5); RET < String Class.getName() > (@f$4); RET < TestClass ParentRunner.getTestClass() > (@f$6); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$7formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; old_this|->{filteredChildren:@f$3formal(z), testClass:@f$6formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); @f$6|->{clazz:@f$5formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$5|->{name:@f$4formal(z)}formal(z):java.lang.Class( sub ); @f$4|->{}formal:java.lang.String( sub ); @f$3|->{}formal:java.util.List( sub ); classRules|->{mIsEmpty:@f$1formal(z)}formal(z):java.util.List( sub ) [footprint (-1 < @f$1); @f$5 != null; @f$4 != null; @f$4 != ""; @f$3 != null; @f$1 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$7formal:org.junit.runners.ParentRunner*( sub ) ; old_this|->{filteredChildren:@f$3rearrange:(z)530, testClass:@f$6rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); @f$6|->{clazz:@f$5rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$5|->{name:@f$4rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$4|->{}rearrange:(z)394:java.lang.String( sub ); @f$3|->{}rearrange:400:java.util.List( sub ); classRules|->{mIsEmpty:@f$1rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] PROP 7 of 9: @f$6 = null; @f$7 = null ; (-1 < @f$1); @f$1 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (_t$4); RET < TestClass ParentRunner.getTestClass() > (@f$4); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$5formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; old_this|->{childrenLock:@f$3formal, filteredChildren:nullformal(z), testClass:@f$4formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); @f$4|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$3|->{}formal(z):java.util.concurrent.locks.Lock( sub ); classRules|->{mIsEmpty:@f$1formal(z)}formal(z):java.util.List( sub ) [footprint @f$7 = null; @f$6 = null; (-1 < @f$1); @f$1 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$5formal:org.junit.runners.ParentRunner*( sub ) ; old_this|->{childrenLock:@f$3rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$4rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); @f$4|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); classRules|->{mIsEmpty:@f$1rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] PROP 8 of 9: @f$6 = null ; (-1 < @f$1); @f$3 != null; @f$1 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (_t$4); RET < TestClass ParentRunner.getTestClass() > (@f$4); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$5formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; old_this|->{filteredChildren:@f$3formal(z), testClass:@f$4formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); @f$4|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$3|->{}formal:java.util.List( sub ); classRules|->{mIsEmpty:@f$1formal(z)}formal(z):java.util.List( sub ) [footprint @f$6 = null; (-1 < @f$1); @f$3 != null; @f$1 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$5formal:org.junit.runners.ParentRunner*( sub ) ; old_this|->{filteredChildren:@f$3rearrange:(z)530, testClass:@f$4rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); @f$4|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$3|->{}rearrange:400:java.util.List( sub ); classRules|->{mIsEmpty:@f$1rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] PROP 9 of 9: @f$6 = "" ; (-1 < @f$1); @f$3 != null; @f$1 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (_t$4); RET < Class TestClass.getJavaClass() > (@f$3); RET < TestClass ParentRunner.getTestClass() > (@f$4); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$5formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; old_this|->{testClass:@f$4formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); @f$4|->{clazz:@f$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$3|->{name:""formal(z)}formal(z):java.lang.Class( sub ); classRules|->{mIsEmpty:@f$1formal(z)}formal(z):java.util.List( sub ) [footprint @f$6 = ""; (-1 < @f$1); @f$3 != null; @f$1 != 1 * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$2formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$5formal:org.junit.runners.ParentRunner*( sub ) ; old_this|->{testClass:@f$4rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); @f$4|->{clazz:@f$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$3|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); classRules|->{mIsEmpty:@f$1rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] Processing prop 2/2 Instruction n$8=*&this:org.junit.runners.ParentRunner* [line 270] .... Rearrangement Start .... Exp: &this Prop: (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$132initial:org.junit.runners.model.Statement*; $T0_31 = n$133initial:void; $irvar1 = n$134initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$135initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] in prop_iter_extend_ptsto lexp: &this prop before: (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$132initial:org.junit.runners.model.Statement*; $T0_31 = n$133initial:void; $irvar1 = n$134initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$135initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] prop list after: PROP 1 of 1: (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$132initial:org.junit.runners.model.Statement*; $T0_31 = n$133initial:void; $irvar1 = n$134initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$135initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] Instruction Returns PROP 1 of 1: n$8 = old_this ; (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] Instruction _=*n$8:org.junit.runners.ParentRunner [line 270] .... Rearrangement Start .... Exp: @f$0 Prop: n$8 = old_this ; (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$136initial:org.junit.runners.model.Statement*; $T0_31 = n$137initial:void; $irvar1 = n$138initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$139initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] in prop_iter_extend_ptsto lexp: @f$0 prop before: n$8 = old_this ; (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$136initial:org.junit.runners.model.Statement*; $T0_31 = n$137initial:void; $irvar1 = n$138initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$139initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] prop list after: PROP 1 of 1: n$8 = old_this ; (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$136initial:org.junit.runners.model.Statement*; $T0_31 = n$137initial:void; $irvar1 = n$138initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$139initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] Instruction Returns PROP 1 of 1: n$8 = old_this ; (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] Instruction n$10=_fun_Description ParentRunner.getDescription()(n$8:org.junit.runners.ParentRunner*) virtual [line 270] Found 5 specs for function org.junit.runners.ParentRunner.getDescription():org.junit.runner.Description START EXECUTING SPECS FOR org.junit.runners.ParentRunner.getDescription():org.junit.runner.Description from state n$8 = old_this ; (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] EXECUTING SPEC 1/5 ACTUAL PRECONDITION = n$8 = old_this ; (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); this|callee = @f$0actual_precondition:org.junit.runners.ParentRunner*; old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] SPEC = --------------------------- ---------- --------------------------- PRE: this|callee = _t$284formal:org.junit.runners.ParentRunner*( sub ) ; _t$282|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$283|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$283rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$282rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$285); MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(return|callee); MEMna < Annotation[] ParentRunner.getRunnerAnnotations():395 > {vpath: }(_t$286); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$288); LOCKED(_t$283); RET < Annotation[] TestClass.getAnnotations() > (_t$286); RET < List ParentRunner.getFilteredChildren() > (_t$288); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$286); RET < TestClass ParentRunner.getTestClass() > (_t$282) ; return|callee = _t$287update:403:org.junit.runner.Description* ; _t$285|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$286|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$286update:395, fChildren:_t$285update:(z)395, fDisplayName:"null"update:395, fTestClass:nullupdate:395, fUniqueId:"null"update:395}formal(z):org.junit.runner.Description; _t$282|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$283|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$283formal, filteredChildren:_t$288update:(z)400, testClass:_t$282formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$288); RET < TestClass ParentRunner.getTestClass() > (_t$282) ; return|callee = EXN _t$288update:395:org.junit.runner.Description* ; _t$288|->{}alloc:java.lang.IllegalArgumentException; _t$282|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$283|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$283formal, filteredChildren:nullformal(z), testClass:_t$282formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: n$8 = @f$0; (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(@f$2); RET < boolean List.isEmpty() > (0) pi2: returns sub1: n$8 = @f$0 sub2: Current Implication SUB: n$8 = @f$0 (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); this|callee = @f$0actual_precondition:org.junit.runners.ParentRunner*; old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] |- this|callee = _t$284formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{childrenLock:_t$283rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$282rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$283|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$282|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply @f$0 _t$284 Current Implication SUB: n$8 = @f$0 (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$284 = @f$0] |- @f$0|->{childrenLock:_t$283rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$282rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$283|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$282|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) Current Implication SUB: n$8 = @f$0 (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$282 = @f$27; _t$283 = @f$25; _t$284 = @f$0 @f$26 = null MISSING FLD: @f$0|->{childrenLock:_t$283rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$282rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- @f$25|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); @f$27|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: n$8 = @f$0 (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$282 = @f$27; _t$283 = @f$25; _t$284 = @f$0 @f$28 = null; @f$26 = null* @f$27|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) MISSING FLD: @f$0|->{childrenLock:_t$283rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$282rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- @f$25|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: n$8 = @f$0 (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$282 = @f$27; _t$283 = @f$25; _t$284 = @f$0 @f$28 = null; @f$26 = null* @f$25|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); @f$27|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) MISSING FLD: @f$0|->{childrenLock:_t$283rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$282rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) ] Result of Abduction SUB: n$8 = @f$0 (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); this|callee = @f$0actual_precondition:org.junit.runners.ParentRunner*; old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$282 = @f$27; _t$283 = @f$25; _t$284 = @f$0 @f$28 = null; @f$26 = null* @f$25|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); @f$27|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) MISSING FLD: @f$0|->{childrenLock:_t$283rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$282rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- this|callee = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; @f$27|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$25|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:@f$25rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$27rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) ] returning TRUE in vpath_find exp:_t$285 vpath_find: cannot find _t$285 in vpath_find exp:_t$287 vpath_find: cannot find _t$287 in vpath_find exp:_t$286 vpath_find: cannot find _t$286 in vpath_find exp:_t$288 vpath_find: cannot find _t$288 New footprint: @f$28 = null; @f$26 = null * @f$25|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); @f$27|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) Frame fld: Frame typ: @f$0: org.junit.runners.ParentRunner( sub ) Missing fld: @f$0|->{childrenLock:@f$25rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$27rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) Instantiated frame: @f$2|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); &classRules|->@f$2update:268:java.util.List*; &$irvar0|->0nullify:void; &return|->n$140initial:org.junit.runners.model.Statement*; &$T0_31|->n$141initial:void; &$irvar1|->n$142initial:void; &statement|->@f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); &old_statement|->@f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); &$irvar2|->n$143initial:void; &this|->@f$0formal:org.junit.runners.ParentRunner*( sub ); &old_this|->@f$0formal:org.junit.runners.ParentRunner*( sub ) Instantiated post: PROP 1 of 2: MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$285); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(return|callee); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$286); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$288); LOCKED(@f$25); RET < Annotation[] TestClass.getAnnotations() > (_t$286); RET < List ParentRunner.getFilteredChildren() > (_t$288); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$286); RET < TestClass ParentRunner.getTestClass() > (@f$27) ; return|callee = _t$287update:270:org.junit.runner.Description* ; _t$285|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$286|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$286update:270, fChildren:_t$285update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; @f$27|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$25|->{}formal(z):java.util.concurrent.locks.Lock( sub ); @f$0|->{childrenLock:@f$25formal, filteredChildren:_t$288update:(z)270, testClass:@f$27formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$288); RET < TestClass ParentRunner.getTestClass() > (@f$27) ; return|callee = EXN _t$288update:270:org.junit.runner.Description* ; _t$288|->{}alloc:java.lang.IllegalArgumentException; @f$27|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$25|->{}formal(z):java.util.concurrent.locks.Lock( sub ); @f$0|->{childrenLock:@f$25formal, filteredChildren:nullformal(z), testClass:@f$27formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** RESULTS FUNCTION CALL ******* PROP 1 of 2: @f$6 = null; @f$7 = null; n$8 = old_this ; (@f$5 <= -1); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$1); UND < List ParentRunner.classRules() > :268(classRules); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(@f$1); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$4update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$2|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$1|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; n$10|->{fAnnotations:_t$1update:270, fChildren:_t$2update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); @f$2|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1formal, filteredChildren:_t$0update:(z)270, testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$7 = null; @f$6 = null; (@f$5 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$4none:java.util.List*( sub ); statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$2|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] PROP 2 of 2: @f$6 = null; @f$7 = null; n$8 = old_this ; (@f$5 <= -1); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < TestClass ParentRunner.getTestClass() > (@f$4); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$2formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$2formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; @f$4|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$3|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$3formal, filteredChildren:nullformal(z), testClass:@f$4formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [footprint @f$7 = null; @f$6 = null; (@f$5 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$2formal:org.junit.runners.ParentRunner*( sub ) ; @f$4|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$3rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$4rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] ***** END RESULTS FUNCTION CALL ******* pvar: classRules found error in dereference spec_pre: @f$26 = null; @f$28 = null; n$8 = old_this ; (@f$3 <= -1); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$285); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$286); UND < List ParentRunner.classRules() > :268(classRules); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$288); LOCKED(@f$25); RET < List ParentRunner.getFilteredChildren() > (_t$288); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$286); RET < TestClass ParentRunner.getTestClass() > (@f$27); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$286|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; _t$285|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:_t$286update:270, fChildren:_t$285update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; @f$27|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$25|->{}formal(z):java.util.concurrent.locks.Lock( sub ); classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); old_this|->{childrenLock:@f$25formal, filteredChildren:_t$288update:(z)270, testClass:@f$27formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$28 = null; @f$26 = null; (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; @f$27|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$25|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{childrenLock:@f$25rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$27rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] exp @f$2 desc: pvar: classRules found error in dereference spec_pre: @f$26 = null; @f$28 = null; n$8 = old_this ; (@f$3 <= -1); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$288); UND < List ParentRunner.classRules() > :268(classRules); RET < TestClass ParentRunner.getTestClass() > (@f$27); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$288update:270:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$288|->{}alloc:java.lang.IllegalArgumentException; @f$27|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$25|->{}formal(z):java.util.concurrent.locks.Lock( sub ); classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); old_this|->{childrenLock:@f$25formal, filteredChildren:nullformal(z), testClass:@f$27formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$28 = null; @f$26 = null; (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; @f$27|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$25|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{childrenLock:@f$25rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$27rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] exp @f$2 desc: Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] EXECUTING SPEC 2/5 ACTUAL PRECONDITION = n$8 = old_this ; (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); this|callee = @f$0actual_precondition:org.junit.runners.ParentRunner*; old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] SPEC = --------------------------- ---------- --------------------------- PRE: _t$290 != null ; this|callee = _t$291formal:org.junit.runners.ParentRunner*( sub ) ; _t$289|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$290|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:_t$290rearrange:(z)530, testClass:_t$289rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$290 != null; MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$292); MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(return|callee); MEMna < Annotation[] ParentRunner.getRunnerAnnotations():395 > {vpath: }(_t$293); RET < Annotation[] TestClass.getAnnotations() > (_t$293); RET < List ParentRunner.getFilteredChildren() > (_t$290); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$293); RET < TestClass ParentRunner.getTestClass() > (_t$289) ; return|callee = _t$294update:403:org.junit.runner.Description* ; _t$292|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$293|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$293update:395, fChildren:_t$292update:(z)395, fDisplayName:"null"update:395, fTestClass:nullupdate:395, fUniqueId:"null"update:395}formal(z):org.junit.runner.Description; _t$289|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$290|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$290formal(z), testClass:_t$289formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$290 != null; MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$294); RET < TestClass ParentRunner.getTestClass() > (_t$289) ; return|callee = EXN _t$294update:395:org.junit.runner.Description* ; _t$294|->{}alloc:java.lang.IllegalArgumentException; _t$289|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$290|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$290formal(z), testClass:_t$289formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: n$8 = @f$0; (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(@f$2); RET < boolean List.isEmpty() > (0) pi2: _t$290 != null returns sub1: n$8 = @f$0 sub2: Current Implication SUB: n$8 = @f$0 (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); this|callee = @f$0actual_precondition:org.junit.runners.ParentRunner*; old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] |- this|callee = _t$291formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{filteredChildren:_t$290rearrange:(z)530, testClass:_t$289rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$290|->{}rearrange:400:java.util.List( sub ); _t$289|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply @f$0 _t$291 Current Implication SUB: n$8 = @f$0 (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$291 = @f$0] |- @f$0|->{filteredChildren:_t$290rearrange:(z)530, testClass:_t$289rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$290|->{}rearrange:400:java.util.List( sub ); _t$289|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) Current Implication SUB: n$8 = @f$0 (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$289 = @f$30; _t$290 = @f$29; _t$291 = @f$0 MISSING FLD: @f$0|->{filteredChildren:_t$290rearrange:(z)530, testClass:_t$289rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- @f$29|->{}rearrange:400:java.util.List( sub ); @f$30|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: n$8 = @f$0 (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$289 = @f$30; _t$290 = @f$29; _t$291 = @f$0 @f$31 = null* @f$30|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) MISSING FLD: @f$0|->{filteredChildren:_t$290rearrange:(z)530, testClass:_t$289rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- @f$29|->{}rearrange:400:java.util.List( sub ) [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: n$8 = @f$0 (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$289 = @f$30; _t$290 = @f$29; _t$291 = @f$0 @f$31 = null* @f$29|->{}rearrange:400:java.util.List( sub ); @f$30|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) MISSING FLD: @f$0|->{filteredChildren:_t$290rearrange:(z)530, testClass:_t$289rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) ] Result of Abduction SUB: n$8 = @f$0 (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); this|callee = @f$0actual_precondition:org.junit.runners.ParentRunner*; old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$289 = @f$30; _t$290 = @f$29; _t$291 = @f$0 @f$31 = null* @f$29|->{}rearrange:400:java.util.List( sub ); @f$30|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) MISSING FLD: @f$0|->{filteredChildren:_t$290rearrange:(z)530, testClass:_t$289rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- @f$29 != null ; this|callee = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; @f$30|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$29|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:@f$29rearrange:(z)530, testClass:@f$30rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) ] returning TRUE in vpath_find exp:_t$292 vpath_find: cannot find _t$292 in vpath_find exp:_t$294 vpath_find: cannot find _t$294 in vpath_find exp:_t$293 vpath_find: cannot find _t$293 in vpath_find exp:_t$294 vpath_find: cannot find _t$294 New footprint: @f$31 = null * @f$29|->{}rearrange:400:java.util.List( sub ); @f$30|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) Frame fld: Frame typ: @f$0: org.junit.runners.ParentRunner( sub ) Missing fld: @f$0|->{filteredChildren:@f$29rearrange:(z)530, testClass:@f$30rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) Instantiated frame: @f$2|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); &classRules|->@f$2update:268:java.util.List*; &$irvar0|->0nullify:void; &return|->n$140initial:org.junit.runners.model.Statement*; &$T0_31|->n$141initial:void; &$irvar1|->n$142initial:void; &statement|->@f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); &old_statement|->@f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); &$irvar2|->n$143initial:void; &this|->@f$0formal:org.junit.runners.ParentRunner*( sub ); &old_this|->@f$0formal:org.junit.runners.ParentRunner*( sub ) Instantiated post: PROP 1 of 2: @f$29 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$292); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(return|callee); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$293); RET < Annotation[] TestClass.getAnnotations() > (_t$293); RET < List ParentRunner.getFilteredChildren() > (@f$29); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$293); RET < TestClass ParentRunner.getTestClass() > (@f$30) ; return|callee = _t$294update:270:org.junit.runner.Description* ; _t$292|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$293|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$293update:270, fChildren:_t$292update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; @f$30|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$29|->{}formal:java.util.List( sub ); @f$0|->{filteredChildren:@f$29formal(z), testClass:@f$30formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: @f$29 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$294); RET < TestClass ParentRunner.getTestClass() > (@f$30) ; return|callee = EXN _t$294update:270:org.junit.runner.Description* ; _t$294|->{}alloc:java.lang.IllegalArgumentException; @f$30|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$29|->{}formal:java.util.List( sub ); @f$0|->{filteredChildren:@f$29formal(z), testClass:@f$30formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** RESULTS FUNCTION CALL ******* PROP 1 of 2: @f$6 = null; n$8 = old_this ; (@f$5 <= -1); @f$1 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < List ParentRunner.getFilteredChildren() > (@f$1); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$0); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$4update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$1|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$0|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; n$10|->{fAnnotations:_t$0update:270, fChildren:_t$1update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); @f$2|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:@f$1formal(z), testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$6 = null; (@f$5 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$4none:java.util.List*( sub ); statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$2|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:400:java.util.List( sub ); old_this|->{filteredChildren:@f$1rearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] PROP 2 of 2: @f$6 = null; n$8 = old_this ; (@f$5 <= -1); @f$3 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < TestClass ParentRunner.getTestClass() > (@f$4); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$2formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$2formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; @f$4|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$3|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:@f$3formal(z), testClass:@f$4formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [footprint @f$6 = null; (@f$5 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$2formal:org.junit.runners.ParentRunner*( sub ) ; @f$4|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$3|->{}rearrange:400:java.util.List( sub ); old_this|->{filteredChildren:@f$3rearrange:(z)530, testClass:@f$4rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] ***** END RESULTS FUNCTION CALL ******* pvar: classRules found error in dereference spec_pre: @f$31 = null; n$8 = old_this ; (@f$3 <= -1); @f$29 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$292); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$293); UND < List ParentRunner.classRules() > :268(classRules); RET < List ParentRunner.getFilteredChildren() > (@f$29); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$293); RET < TestClass ParentRunner.getTestClass() > (@f$30); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$293|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; _t$292|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:_t$293update:270, fChildren:_t$292update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; @f$30|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$29|->{}formal:java.util.List( sub ); classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); old_this|->{filteredChildren:@f$29formal(z), testClass:@f$30formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$31 = null; (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; @f$30|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$29|->{}rearrange:400:java.util.List( sub ); classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{filteredChildren:@f$29rearrange:(z)530, testClass:@f$30rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] exp @f$2 desc: pvar: classRules found error in dereference spec_pre: @f$31 = null; n$8 = old_this ; (@f$3 <= -1); @f$29 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$294); UND < List ParentRunner.classRules() > :268(classRules); RET < TestClass ParentRunner.getTestClass() > (@f$30); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$294update:270:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$294|->{}alloc:java.lang.IllegalArgumentException; @f$30|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$29|->{}formal:java.util.List( sub ); classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); old_this|->{filteredChildren:@f$29formal(z), testClass:@f$30formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$31 = null; (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; @f$30|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$29|->{}rearrange:400:java.util.List( sub ); classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{filteredChildren:@f$29rearrange:(z)530, testClass:@f$30rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] exp @f$2 desc: Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] EXECUTING SPEC 3/5 ACTUAL PRECONDITION = n$8 = old_this ; (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); this|callee = @f$0actual_precondition:org.junit.runners.ParentRunner*; old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] SPEC = --------------------------- ---------- --------------------------- PRE: _t$295 != null ; this|callee = _t$297formal:org.junit.runners.ParentRunner*( sub ) ; _t$295|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$296|->{clazz:_t$295rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:_t$296rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) POST 1 of 1: _t$295 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$298); RET < Class TestClass.getJavaClass() > (_t$295); RET < TestClass ParentRunner.getTestClass() > (_t$296) ; return|callee = EXN _t$298update:397:org.junit.runner.Description* ; _t$298|->{}alloc:java.lang.IllegalArgumentException; _t$295|->{name:""formal(z)}formal(z):java.lang.Class( sub ); _t$296|->{clazz:_t$295formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:_t$296formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: n$8 = @f$0; (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(@f$2); RET < boolean List.isEmpty() > (0) pi2: _t$295 != null returns sub1: n$8 = @f$0 sub2: Current Implication SUB: n$8 = @f$0 (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); this|callee = @f$0actual_precondition:org.junit.runners.ParentRunner*; old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] |- this|callee = _t$297formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{testClass:_t$296rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$296|->{clazz:_t$295rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$295|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) Current Implication SUB: n$8 = @f$0 (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); this|callee = @f$0actual_precondition:org.junit.runners.ParentRunner*; old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] |- this|callee = _t$297formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{testClass:_t$296rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$296|->{clazz:_t$295rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$295|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: ""|->{count:_t$316none, hash:_t$317none, offset:_t$318none, value:_t$319none}none:java.lang.String] [FRAME TYPING: "": java.lang.String ] do_imply @f$0 _t$297 Current Implication SUB: n$8 = @f$0 (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$297 = @f$0] |- @f$0|->{testClass:_t$296rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$296|->{clazz:_t$295rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$295|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: ""|->{count:_t$316none, hash:_t$317none, offset:_t$318none, value:_t$319none}none:java.lang.String] [FRAME TYPING: "": java.lang.String ] Current Implication SUB: n$8 = @f$0 (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$296 = @f$32; _t$297 = @f$0 MISSING FLD: @f$0|->{testClass:_t$296rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- @f$32|->{clazz:_t$295rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$295|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: ""|->{count:_t$316none, hash:_t$317none, offset:_t$318none, value:_t$319none}none:java.lang.String] [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] Current Implication SUB: n$8 = @f$0 (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$295 = @f$33; _t$296 = @f$32; _t$297 = @f$0 @f$32|->{clazz:_t$295rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) MISSING FLD: @f$0|->{testClass:_t$296rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- @f$33|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: ""|->{count:_t$316none, hash:_t$317none, offset:_t$318none, value:_t$319none}none:java.lang.String] [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] Final Implication SUB: n$8 = @f$0 (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$295 = @f$33; _t$296 = @f$32; _t$297 = @f$0 @f$34 = ""* @f$33|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$32|->{clazz:_t$295rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) MISSING FLD: @f$0|->{testClass:_t$296rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- [FRAME FLD: ""|->{count:_t$316none, hash:_t$317none, offset:_t$318none, value:_t$319none}none:java.lang.String] [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] Result of Abduction SUB: n$8 = @f$0 (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); this|callee = @f$0actual_precondition:org.junit.runners.ParentRunner*; old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$295 = @f$33; _t$296 = @f$32; _t$297 = @f$0 @f$34 = ""* @f$33|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$32|->{clazz:_t$295rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) MISSING FLD: @f$0|->{testClass:_t$296rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- @f$33 != null ; this|callee = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; @f$33|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$32|->{clazz:@f$33rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:@f$32rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME FLD: ""|->{count:_t$316none, hash:_t$317none, offset:_t$318none, value:_t$319none}none:java.lang.String] [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] returning TRUE in vpath_find exp:_t$298 vpath_find: cannot find _t$298 New footprint: @f$34 = "" * @f$33|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$32|->{clazz:@f$33rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) Frame fld: ""|->{count:_t$316none, hash:_t$317none, offset:_t$318none, value:_t$319none}none:java.lang.String Frame typ: @f$0: org.junit.runners.ParentRunner( sub ) "": java.lang.String Missing fld: @f$0|->{testClass:@f$32rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) Instantiated frame: @f$2|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); &classRules|->@f$2update:268:java.util.List*; &$irvar0|->0nullify:void; &return|->n$140initial:org.junit.runners.model.Statement*; &$T0_31|->n$141initial:void; &$irvar1|->n$142initial:void; &statement|->@f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); &old_statement|->@f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); &$irvar2|->n$143initial:void; &this|->@f$0formal:org.junit.runners.ParentRunner*( sub ); &old_this|->@f$0formal:org.junit.runners.ParentRunner*( sub ) Instantiated post: PROP 1 of 1: @f$33 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$298); RET < Class TestClass.getJavaClass() > (@f$33); RET < TestClass ParentRunner.getTestClass() > (@f$32) ; return|callee = EXN _t$298update:270:org.junit.runner.Description* ; _t$298|->{}alloc:java.lang.IllegalArgumentException; @f$33|->{name:""formal(z)}formal(z):java.lang.Class( sub ); @f$32|->{clazz:@f$33formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$0|->{testClass:@f$32formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** RESULTS FUNCTION CALL ******* PROP 1 of 1: @f$6 = ""; n$8 = old_this ; (@f$5 <= -1); @f$3 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < Class TestClass.getJavaClass() > (@f$3); RET < TestClass ParentRunner.getTestClass() > (@f$4); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$2formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$2formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; @f$4|->{clazz:@f$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$3|->{name:""formal(z)}formal(z):java.lang.Class( sub ); old_this|->{testClass:@f$4formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [footprint @f$6 = ""; (@f$5 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$2formal:org.junit.runners.ParentRunner*( sub ) ; @f$4|->{clazz:@f$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$3|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); old_this|->{testClass:@f$4rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] ***** END RESULTS FUNCTION CALL ******* pvar: classRules found error in dereference spec_pre: @f$34 = ""; n$8 = old_this ; (@f$3 <= -1); @f$33 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$298); UND < List ParentRunner.classRules() > :268(classRules); RET < Class TestClass.getJavaClass() > (@f$33); RET < TestClass ParentRunner.getTestClass() > (@f$32); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$298update:270:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$298|->{}alloc:java.lang.IllegalArgumentException; @f$33|->{name:""formal(z)}formal(z):java.lang.Class( sub ); @f$32|->{clazz:@f$33formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); old_this|->{testClass:@f$32formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$34 = ""; (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; @f$33|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$32|->{clazz:@f$33rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{testClass:@f$32rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] exp @f$2 desc: Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] EXECUTING SPEC 4/5 ACTUAL PRECONDITION = n$8 = old_this ; (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); this|callee = @f$0actual_precondition:org.junit.runners.ParentRunner*; old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] SPEC = --------------------------- ---------- --------------------------- PRE: _t$299 != null; _t$299 != ""; _t$300 != null ; this|callee = _t$303formal:org.junit.runners.ParentRunner*( sub ) ; _t$299|->{}rearrange:(z)394:java.lang.String( sub ); _t$300|->{name:_t$299rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$301|->{clazz:_t$300rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$302|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$302rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$301rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$299 != null; _t$299 != ""; _t$300 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$304); MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(return|callee); UND < Annotation[] Class.getAnnotations() > :216(_t$306); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$307); LOCKED(_t$302); RET < Annotation[] TestClass.getAnnotations() > (_t$306); RET < List ParentRunner.getFilteredChildren() > (_t$307); RET < Class TestClass.getJavaClass() > (_t$300); RET < String Class.getName() > (_t$299); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$306); RET < TestClass ParentRunner.getTestClass() > (_t$301) ; return|callee = _t$305update:403:org.junit.runner.Description* ; _t$304|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; return|callee|->{fAnnotations:_t$306update:397, fChildren:_t$304update:(z)397, fDisplayName:_t$299update:397, fTestClass:_t$300update:397, fUniqueId:_t$299update:397}formal(z):org.junit.runner.Description; _t$299|->{}formal:java.lang.String( sub ); _t$300|->{name:_t$299formal(z)}formal(z):java.lang.Class( sub ); _t$301|->{clazz:_t$300formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$302|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$302formal, filteredChildren:_t$307update:(z)400, testClass:_t$301formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$299 != null; _t$299 != ""; _t$300 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$307); RET < Class TestClass.getJavaClass() > (_t$300); RET < String Class.getName() > (_t$299); RET < TestClass ParentRunner.getTestClass() > (_t$301) ; return|callee = EXN _t$307update:397:org.junit.runner.Description* ; _t$307|->{}alloc:java.lang.IllegalArgumentException; _t$299|->{}formal:java.lang.String( sub ); _t$300|->{name:_t$299formal(z)}formal(z):java.lang.Class( sub ); _t$301|->{clazz:_t$300formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$302|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$302formal, filteredChildren:nullformal(z), testClass:_t$301formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: n$8 = @f$0; (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(@f$2); RET < boolean List.isEmpty() > (0) pi2: _t$299 != null; _t$299 != ""; _t$300 != null returns sub1: n$8 = @f$0 sub2: Current Implication SUB: n$8 = @f$0 (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); this|callee = @f$0actual_precondition:org.junit.runners.ParentRunner*; old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] |- this|callee = _t$303formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{childrenLock:_t$302rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$301rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$302|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$301|->{clazz:_t$300rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$300|->{name:_t$299rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$299|->{}rearrange:(z)394:java.lang.String( sub ) do_imply @f$0 _t$303 Current Implication SUB: n$8 = @f$0 (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$303 = @f$0] |- @f$0|->{childrenLock:_t$302rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$301rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$302|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$301|->{clazz:_t$300rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$300|->{name:_t$299rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$299|->{}rearrange:(z)394:java.lang.String( sub ) Current Implication SUB: n$8 = @f$0 (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$301 = @f$37; _t$302 = @f$35; _t$303 = @f$0 @f$36 = null MISSING FLD: @f$0|->{childrenLock:_t$302rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$301rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- @f$35|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); @f$37|->{clazz:_t$300rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$300|->{name:_t$299rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$299|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: n$8 = @f$0 (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$300 = @f$38; _t$301 = @f$37; _t$302 = @f$35; _t$303 = @f$0 @f$36 = null* @f$37|->{clazz:_t$300rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) MISSING FLD: @f$0|->{childrenLock:_t$302rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$301rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- @f$35|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); @f$38|->{name:_t$299rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$299|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: n$8 = @f$0 (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$300 = @f$38; _t$301 = @f$37; _t$302 = @f$35; _t$303 = @f$0 @f$36 = null* @f$35|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); @f$37|->{clazz:_t$300rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) MISSING FLD: @f$0|->{childrenLock:_t$302rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$301rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- @f$38|->{name:_t$299rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$299|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: n$8 = @f$0 (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$299 = @f$39; _t$300 = @f$38; _t$301 = @f$37; _t$302 = @f$35; _t$303 = @f$0 @f$36 = null* @f$38|->{name:_t$299rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$35|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); @f$37|->{clazz:_t$300rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) MISSING FLD: @f$0|->{childrenLock:_t$302rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$301rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- @f$39|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: n$8 = @f$0 (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$299 = @f$39; _t$300 = @f$38; _t$301 = @f$37; _t$302 = @f$35; _t$303 = @f$0 @f$36 = null* @f$39|->{}rearrange:(z)394:java.lang.String( sub ); @f$38|->{name:_t$299rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$35|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); @f$37|->{clazz:_t$300rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) MISSING FLD: @f$0|->{childrenLock:_t$302rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$301rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) ] imply_pi: adding missing atom _t$299 != "" Result of Abduction SUB: n$8 = @f$0 (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); this|callee = @f$0actual_precondition:org.junit.runners.ParentRunner*; old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$299 = @f$39; _t$300 = @f$38; _t$301 = @f$37; _t$302 = @f$35; _t$303 = @f$0 _t$299 != ""; @f$36 = null* @f$39|->{}rearrange:(z)394:java.lang.String( sub ); @f$38|->{name:_t$299rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$35|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); @f$37|->{clazz:_t$300rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) MISSING FLD: @f$0|->{childrenLock:_t$302rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$301rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- @f$39 != null; @f$39 != ""; @f$38 != null ; this|callee = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; @f$39|->{}rearrange:(z)394:java.lang.String( sub ); @f$38|->{name:@f$39rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$37|->{clazz:@f$38rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$35|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:@f$35rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$37rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) ] returning TRUE in vpath_find exp:_t$304 vpath_find: cannot find _t$304 in vpath_find exp:_t$305 vpath_find: cannot find _t$305 in vpath_find exp:_t$307 vpath_find: cannot find _t$307 New footprint: @f$39 != ""; @f$36 = null * @f$39|->{}rearrange:(z)394:java.lang.String( sub ); @f$38|->{name:@f$39rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$35|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); @f$37|->{clazz:@f$38rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) Frame fld: Frame typ: @f$0: org.junit.runners.ParentRunner( sub ) Missing fld: @f$0|->{childrenLock:@f$35rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$37rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) Instantiated frame: @f$2|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); &classRules|->@f$2update:268:java.util.List*; &$irvar0|->0nullify:void; &return|->n$140initial:org.junit.runners.model.Statement*; &$T0_31|->n$141initial:void; &$irvar1|->n$142initial:void; &statement|->@f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); &old_statement|->@f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); &$irvar2|->n$143initial:void; &this|->@f$0formal:org.junit.runners.ParentRunner*( sub ); &old_this|->@f$0formal:org.junit.runners.ParentRunner*( sub ) Instantiated post: PROP 1 of 2: @f$39 != null; @f$39 != ""; @f$38 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$304); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(return|callee); UND < Annotation[] Class.getAnnotations() > :216(_t$306); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$307); LOCKED(@f$35); RET < Annotation[] TestClass.getAnnotations() > (_t$306); RET < List ParentRunner.getFilteredChildren() > (_t$307); RET < Class TestClass.getJavaClass() > (@f$38); RET < String Class.getName() > (@f$39); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$306); RET < TestClass ParentRunner.getTestClass() > (@f$37) ; return|callee = _t$305update:270:org.junit.runner.Description* ; _t$304|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; return|callee|->{fAnnotations:_t$306update:270, fChildren:_t$304update:(z)270, fDisplayName:@f$39update:270, fTestClass:@f$38update:270, fUniqueId:@f$39update:270}formal(z):org.junit.runner.Description; @f$39|->{}formal:java.lang.String( sub ); @f$38|->{name:@f$39formal(z)}formal(z):java.lang.Class( sub ); @f$37|->{clazz:@f$38formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$35|->{}formal(z):java.util.concurrent.locks.Lock( sub ); @f$0|->{childrenLock:@f$35formal, filteredChildren:_t$307update:(z)270, testClass:@f$37formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: @f$39 != null; @f$39 != ""; @f$38 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$307); RET < Class TestClass.getJavaClass() > (@f$38); RET < String Class.getName() > (@f$39); RET < TestClass ParentRunner.getTestClass() > (@f$37) ; return|callee = EXN _t$307update:270:org.junit.runner.Description* ; _t$307|->{}alloc:java.lang.IllegalArgumentException; @f$39|->{}formal:java.lang.String( sub ); @f$38|->{name:@f$39formal(z)}formal(z):java.lang.Class( sub ); @f$37|->{clazz:@f$38formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$35|->{}formal(z):java.util.concurrent.locks.Lock( sub ); @f$0|->{childrenLock:@f$35formal, filteredChildren:nullformal(z), testClass:@f$37formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** RESULTS FUNCTION CALL ******* PROP 1 of 2: @f$8 = null; n$8 = old_this ; (@f$7 <= -1); @f$4 != null; @f$4 != ""; @f$3 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268(classRules); UND < Annotation[] Class.getAnnotations() > :216(_t$1); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(@f$1); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Class TestClass.getJavaClass() > (@f$3); RET < String Class.getName() > (@f$4); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$6update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$2|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:_t$1update:270, fChildren:_t$2update:(z)270, fDisplayName:@f$4update:270, fTestClass:@f$3update:270, fUniqueId:@f$4update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); @f$4|->{}formal:java.lang.String( sub ); @f$3|->{name:@f$4formal(z)}formal(z):java.lang.Class( sub ); @f$2|->{clazz:@f$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1formal, filteredChildren:_t$0update:(z)270, testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$8 = null; (@f$7 <= -1); @f$4 != "" * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$6none:java.util.List*( sub ); statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$7rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$4|->{}rearrange:(z)394:java.lang.String( sub ); @f$3|->{name:@f$4rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$2|->{clazz:@f$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] PROP 2 of 2: @f$8 = null; n$8 = old_this ; (@f$7 <= -1); @f$5 != null; @f$4 != null; @f$4 != ""; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < Class TestClass.getJavaClass() > (@f$5); RET < String Class.getName() > (@f$4); RET < TestClass ParentRunner.getTestClass() > (@f$6); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$2formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$2formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; @f$6|->{clazz:@f$5formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$5|->{name:@f$4formal(z)}formal(z):java.lang.Class( sub ); @f$4|->{}formal:java.lang.String( sub ); @f$3|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$3formal, filteredChildren:nullformal(z), testClass:@f$6formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [footprint @f$8 = null; (@f$7 <= -1); @f$4 != "" * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$2formal:org.junit.runners.ParentRunner*( sub ) ; @f$6|->{clazz:@f$5rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$5|->{name:@f$4rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$4|->{}rearrange:(z)394:java.lang.String( sub ); @f$3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$3rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$6rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); classRules|->{mIsEmpty:@f$7rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] ***** END RESULTS FUNCTION CALL ******* pvar: classRules found error in dereference spec_pre: @f$36 = null; n$8 = old_this ; (@f$3 <= -1); @f$39 != null; @f$39 != ""; @f$38 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$304); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268(classRules); UND < Annotation[] Class.getAnnotations() > :216(_t$306); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$307); LOCKED(@f$35); RET < List ParentRunner.getFilteredChildren() > (_t$307); RET < Class TestClass.getJavaClass() > (@f$38); RET < String Class.getName() > (@f$39); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$306); RET < TestClass ParentRunner.getTestClass() > (@f$37); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$304|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:_t$306update:270, fChildren:_t$304update:(z)270, fDisplayName:@f$39update:270, fTestClass:@f$38update:270, fUniqueId:@f$39update:270}formal(z):org.junit.runner.Description; @f$39|->{}formal:java.lang.String( sub ); @f$38|->{name:@f$39formal(z)}formal(z):java.lang.Class( sub ); @f$37|->{clazz:@f$38formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$35|->{}formal(z):java.util.concurrent.locks.Lock( sub ); classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); old_this|->{childrenLock:@f$35formal, filteredChildren:_t$307update:(z)270, testClass:@f$37formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$36 = null; (@f$3 <= -1); @f$39 != "" * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; @f$39|->{}rearrange:(z)394:java.lang.String( sub ); @f$38|->{name:@f$39rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$37|->{clazz:@f$38rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$35|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{childrenLock:@f$35rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$37rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] exp @f$2 desc: pvar: classRules found error in dereference spec_pre: @f$36 = null; n$8 = old_this ; (@f$3 <= -1); @f$39 != null; @f$39 != ""; @f$38 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$307); UND < List ParentRunner.classRules() > :268(classRules); RET < Class TestClass.getJavaClass() > (@f$38); RET < String Class.getName() > (@f$39); RET < TestClass ParentRunner.getTestClass() > (@f$37); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$307update:270:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$307|->{}alloc:java.lang.IllegalArgumentException; @f$39|->{}formal:java.lang.String( sub ); @f$38|->{name:@f$39formal(z)}formal(z):java.lang.Class( sub ); @f$37|->{clazz:@f$38formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$35|->{}formal(z):java.util.concurrent.locks.Lock( sub ); classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); old_this|->{childrenLock:@f$35formal, filteredChildren:nullformal(z), testClass:@f$37formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$36 = null; (@f$3 <= -1); @f$39 != "" * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; @f$39|->{}rearrange:(z)394:java.lang.String( sub ); @f$38|->{name:@f$39rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$37|->{clazz:@f$38rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$35|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{childrenLock:@f$35rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$37rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] exp @f$2 desc: Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] EXECUTING SPEC 5/5 ACTUAL PRECONDITION = n$8 = old_this ; (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); this|callee = @f$0actual_precondition:org.junit.runners.ParentRunner*; old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] SPEC = --------------------------- ---------- --------------------------- PRE: _t$308 != null; _t$308 != ""; _t$309 != null; _t$311 != null ; this|callee = _t$312formal:org.junit.runners.ParentRunner*( sub ) ; _t$308|->{}rearrange:(z)394:java.lang.String( sub ); _t$309|->{name:_t$308rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$310|->{clazz:_t$309rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$311|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:_t$311rearrange:(z)530, testClass:_t$310rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$308 != null; _t$308 != ""; _t$309 != null; _t$311 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$313); MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(return|callee); UND < Annotation[] Class.getAnnotations() > :216(_t$315); RET < Annotation[] TestClass.getAnnotations() > (_t$315); RET < List ParentRunner.getFilteredChildren() > (_t$311); RET < Class TestClass.getJavaClass() > (_t$309); RET < String Class.getName() > (_t$308); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$315); RET < TestClass ParentRunner.getTestClass() > (_t$310) ; return|callee = _t$314update:403:org.junit.runner.Description* ; _t$313|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; return|callee|->{fAnnotations:_t$315update:397, fChildren:_t$313update:(z)397, fDisplayName:_t$308update:397, fTestClass:_t$309update:397, fUniqueId:_t$308update:397}formal(z):org.junit.runner.Description; _t$308|->{}formal:java.lang.String( sub ); _t$309|->{name:_t$308formal(z)}formal(z):java.lang.Class( sub ); _t$310|->{clazz:_t$309formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$311|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$311formal(z), testClass:_t$310formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$308 != null; _t$308 != ""; _t$309 != null; _t$311 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$314); RET < Class TestClass.getJavaClass() > (_t$309); RET < String Class.getName() > (_t$308); RET < TestClass ParentRunner.getTestClass() > (_t$310) ; return|callee = EXN _t$314update:397:org.junit.runner.Description* ; _t$314|->{}alloc:java.lang.IllegalArgumentException; _t$308|->{}formal:java.lang.String( sub ); _t$309|->{name:_t$308formal(z)}formal(z):java.lang.Class( sub ); _t$310|->{clazz:_t$309formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$311|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$311formal(z), testClass:_t$310formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: n$8 = @f$0; (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(@f$2); RET < boolean List.isEmpty() > (0) pi2: _t$308 != null; _t$308 != ""; _t$309 != null; _t$311 != null returns sub1: n$8 = @f$0 sub2: Current Implication SUB: n$8 = @f$0 (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); this|callee = @f$0actual_precondition:org.junit.runners.ParentRunner*; old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] |- this|callee = _t$312formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{filteredChildren:_t$311rearrange:(z)530, testClass:_t$310rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$311|->{}rearrange:400:java.util.List( sub ); _t$310|->{clazz:_t$309rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$309|->{name:_t$308rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$308|->{}rearrange:(z)394:java.lang.String( sub ) do_imply @f$0 _t$312 Current Implication SUB: n$8 = @f$0 (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$312 = @f$0] |- @f$0|->{filteredChildren:_t$311rearrange:(z)530, testClass:_t$310rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$311|->{}rearrange:400:java.util.List( sub ); _t$310|->{clazz:_t$309rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$309|->{name:_t$308rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$308|->{}rearrange:(z)394:java.lang.String( sub ) Current Implication SUB: n$8 = @f$0 (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$310 = @f$41; _t$311 = @f$40; _t$312 = @f$0 MISSING FLD: @f$0|->{filteredChildren:_t$311rearrange:(z)530, testClass:_t$310rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- @f$40|->{}rearrange:400:java.util.List( sub ); @f$41|->{clazz:_t$309rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$309|->{name:_t$308rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$308|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: n$8 = @f$0 (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$309 = @f$42; _t$310 = @f$41; _t$311 = @f$40; _t$312 = @f$0 @f$41|->{clazz:_t$309rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) MISSING FLD: @f$0|->{filteredChildren:_t$311rearrange:(z)530, testClass:_t$310rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- @f$40|->{}rearrange:400:java.util.List( sub ); @f$42|->{name:_t$308rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$308|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: n$8 = @f$0 (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$309 = @f$42; _t$310 = @f$41; _t$311 = @f$40; _t$312 = @f$0 @f$40|->{}rearrange:400:java.util.List( sub ); @f$41|->{clazz:_t$309rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) MISSING FLD: @f$0|->{filteredChildren:_t$311rearrange:(z)530, testClass:_t$310rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- @f$42|->{name:_t$308rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$308|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: n$8 = @f$0 (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$308 = @f$43; _t$309 = @f$42; _t$310 = @f$41; _t$311 = @f$40; _t$312 = @f$0 @f$42|->{name:_t$308rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$40|->{}rearrange:400:java.util.List( sub ); @f$41|->{clazz:_t$309rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) MISSING FLD: @f$0|->{filteredChildren:_t$311rearrange:(z)530, testClass:_t$310rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- @f$43|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: n$8 = @f$0 (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$308 = @f$43; _t$309 = @f$42; _t$310 = @f$41; _t$311 = @f$40; _t$312 = @f$0 @f$43|->{}rearrange:(z)394:java.lang.String( sub ); @f$42|->{name:_t$308rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$40|->{}rearrange:400:java.util.List( sub ); @f$41|->{clazz:_t$309rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) MISSING FLD: @f$0|->{filteredChildren:_t$311rearrange:(z)530, testClass:_t$310rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) ] imply_pi: adding missing atom _t$308 != "" Result of Abduction SUB: n$8 = @f$0 (@f$3 <= -1); UND < List ParentRunner.classRules() > :268(classRules); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); this|callee = @f$0actual_precondition:org.junit.runners.ParentRunner*; old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) [footprint (@f$3 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] [SUB: _t$308 = @f$43; _t$309 = @f$42; _t$310 = @f$41; _t$311 = @f$40; _t$312 = @f$0 _t$308 != ""* @f$43|->{}rearrange:(z)394:java.lang.String( sub ); @f$42|->{name:_t$308rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$40|->{}rearrange:400:java.util.List( sub ); @f$41|->{clazz:_t$309rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) MISSING FLD: @f$0|->{filteredChildren:_t$311rearrange:(z)530, testClass:_t$310rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub )] |- @f$43 != null; @f$43 != ""; @f$42 != null; @f$40 != null ; this|callee = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; @f$43|->{}rearrange:(z)394:java.lang.String( sub ); @f$42|->{name:@f$43rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$41|->{clazz:@f$42rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$40|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:@f$40rearrange:(z)530, testClass:@f$41rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: @f$0: org.junit.runners.ParentRunner( sub ) ] returning TRUE in vpath_find exp:_t$313 vpath_find: cannot find _t$313 in vpath_find exp:_t$314 vpath_find: cannot find _t$314 in vpath_find exp:_t$314 vpath_find: cannot find _t$314 New footprint: @f$43 != "" * @f$43|->{}rearrange:(z)394:java.lang.String( sub ); @f$42|->{name:@f$43rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$40|->{}rearrange:400:java.util.List( sub ); @f$41|->{clazz:@f$42rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) Frame fld: Frame typ: @f$0: org.junit.runners.ParentRunner( sub ) Missing fld: @f$0|->{filteredChildren:@f$40rearrange:(z)530, testClass:@f$41rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) Instantiated frame: @f$2|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); &classRules|->@f$2update:268:java.util.List*; &$irvar0|->0nullify:void; &return|->n$140initial:org.junit.runners.model.Statement*; &$T0_31|->n$141initial:void; &$irvar1|->n$142initial:void; &statement|->@f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); &old_statement|->@f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); &$irvar2|->n$143initial:void; &this|->@f$0formal:org.junit.runners.ParentRunner*( sub ); &old_this|->@f$0formal:org.junit.runners.ParentRunner*( sub ) Instantiated post: PROP 1 of 2: @f$43 != null; @f$43 != ""; @f$42 != null; @f$40 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$313); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(return|callee); UND < Annotation[] Class.getAnnotations() > :216(_t$315); RET < Annotation[] TestClass.getAnnotations() > (_t$315); RET < List ParentRunner.getFilteredChildren() > (@f$40); RET < Class TestClass.getJavaClass() > (@f$42); RET < String Class.getName() > (@f$43); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$315); RET < TestClass ParentRunner.getTestClass() > (@f$41) ; return|callee = _t$314update:270:org.junit.runner.Description* ; _t$313|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; return|callee|->{fAnnotations:_t$315update:270, fChildren:_t$313update:(z)270, fDisplayName:@f$43update:270, fTestClass:@f$42update:270, fUniqueId:@f$43update:270}formal(z):org.junit.runner.Description; @f$43|->{}formal:java.lang.String( sub ); @f$42|->{name:@f$43formal(z)}formal(z):java.lang.Class( sub ); @f$41|->{clazz:@f$42formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$40|->{}formal:java.util.List( sub ); @f$0|->{filteredChildren:@f$40formal(z), testClass:@f$41formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: @f$43 != null; @f$43 != ""; @f$42 != null; @f$40 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$314); RET < Class TestClass.getJavaClass() > (@f$42); RET < String Class.getName() > (@f$43); RET < TestClass ParentRunner.getTestClass() > (@f$41) ; return|callee = EXN _t$314update:270:org.junit.runner.Description* ; _t$314|->{}alloc:java.lang.IllegalArgumentException; @f$43|->{}formal:java.lang.String( sub ); @f$42|->{name:@f$43formal(z)}formal(z):java.lang.Class( sub ); @f$41|->{clazz:@f$42formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$40|->{}formal:java.util.List( sub ); @f$0|->{filteredChildren:@f$40formal(z), testClass:@f$41formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** RESULTS FUNCTION CALL ******* PROP 1 of 2: n$8 = old_this ; (@f$7 <= -1); @f$4 != null; @f$4 != ""; @f$3 != null; @f$1 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268(classRules); UND < Annotation[] Class.getAnnotations() > :216(_t$0); RET < List ParentRunner.getFilteredChildren() > (@f$1); RET < Class TestClass.getJavaClass() > (@f$3); RET < String Class.getName() > (@f$4); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$0); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$6update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$1|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:_t$0update:270, fChildren:_t$1update:(z)270, fDisplayName:@f$4update:270, fTestClass:@f$3update:270, fUniqueId:@f$4update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); @f$4|->{}formal:java.lang.String( sub ); @f$3|->{name:@f$4formal(z)}formal(z):java.lang.Class( sub ); @f$2|->{clazz:@f$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:@f$1formal(z), testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint (@f$7 <= -1); @f$4 != "" * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$6none:java.util.List*( sub ); statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$7rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$4|->{}rearrange:(z)394:java.lang.String( sub ); @f$3|->{name:@f$4rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$2|->{clazz:@f$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:400:java.util.List( sub ); old_this|->{filteredChildren:@f$1rearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] PROP 2 of 2: n$8 = old_this ; (@f$7 <= -1); @f$5 != null; @f$4 != null; @f$4 != ""; @f$3 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < Class TestClass.getJavaClass() > (@f$5); RET < String Class.getName() > (@f$4); RET < TestClass ParentRunner.getTestClass() > (@f$6); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$2formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$2formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; @f$6|->{clazz:@f$5formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$5|->{name:@f$4formal(z)}formal(z):java.lang.Class( sub ); @f$4|->{}formal:java.lang.String( sub ); @f$3|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:@f$3formal(z), testClass:@f$6formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [footprint (@f$7 <= -1); @f$4 != "" * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$2formal:org.junit.runners.ParentRunner*( sub ) ; @f$6|->{clazz:@f$5rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$5|->{name:@f$4rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$4|->{}rearrange:(z)394:java.lang.String( sub ); @f$3|->{}rearrange:400:java.util.List( sub ); old_this|->{filteredChildren:@f$3rearrange:(z)530, testClass:@f$6rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); classRules|->{mIsEmpty:@f$7rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] ***** END RESULTS FUNCTION CALL ******* pvar: classRules found error in dereference spec_pre: n$8 = old_this ; (@f$3 <= -1); @f$43 != null; @f$43 != ""; @f$42 != null; @f$40 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$313); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268(classRules); UND < Annotation[] Class.getAnnotations() > :216(_t$315); RET < List ParentRunner.getFilteredChildren() > (@f$40); RET < Class TestClass.getJavaClass() > (@f$42); RET < String Class.getName() > (@f$43); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$315); RET < TestClass ParentRunner.getTestClass() > (@f$41); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$140initial:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$313|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:_t$315update:270, fChildren:_t$313update:(z)270, fDisplayName:@f$43update:270, fTestClass:@f$42update:270, fUniqueId:@f$43update:270}formal(z):org.junit.runner.Description; @f$43|->{}formal:java.lang.String( sub ); @f$42|->{name:@f$43formal(z)}formal(z):java.lang.Class( sub ); @f$41|->{clazz:@f$42formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$40|->{}formal:java.util.List( sub ); classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); old_this|->{filteredChildren:@f$40formal(z), testClass:@f$41formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint (@f$3 <= -1); @f$43 != "" * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; @f$43|->{}rearrange:(z)394:java.lang.String( sub ); @f$42|->{name:@f$43rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$41|->{clazz:@f$42rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$40|->{}rearrange:400:java.util.List( sub ); classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{filteredChildren:@f$40rearrange:(z)530, testClass:@f$41rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] exp @f$2 desc: pvar: classRules found error in dereference spec_pre: n$8 = old_this ; (@f$3 <= -1); @f$43 != null; @f$43 != ""; @f$42 != null; @f$40 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$314); UND < List ParentRunner.classRules() > :268(classRules); RET < Class TestClass.getJavaClass() > (@f$42); RET < String Class.getName() > (@f$43); RET < TestClass ParentRunner.getTestClass() > (@f$41); RET < boolean List.isEmpty() > (0) ; classRules = @f$2update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$314update:270:org.junit.runners.model.Statement*; $T0_31 = n$141initial:void; $irvar1 = n$142initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$143initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$314|->{}alloc:java.lang.IllegalArgumentException; @f$43|->{}formal:java.lang.String( sub ); @f$42|->{name:@f$43formal(z)}formal(z):java.lang.Class( sub ); @f$41|->{clazz:@f$42formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$40|->{}formal:java.util.List( sub ); classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); old_this|->{filteredChildren:@f$40formal(z), testClass:@f$41formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint (@f$3 <= -1); @f$43 != "" * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$2none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; @f$43|->{}rearrange:(z)394:java.lang.String( sub ); @f$42|->{name:@f$43rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$41|->{clazz:@f$42rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$40|->{}rearrange:400:java.util.List( sub ); classRules|->{mIsEmpty:@f$3rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); old_this|->{filteredChildren:@f$40rearrange:(z)530, testClass:@f$41rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] exp @f$2 desc: Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 9: @f$6 = null; @f$7 = null; n$8 = old_this ; (@f$5 <= -1); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$6); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$5); UND < List ParentRunner.classRules() > :268(classRules); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(@f$1); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$5); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$4update:268:java.util.List*; $irvar0 = 0nullify:void; return = _t$4initial:org.junit.runners.model.Statement*; $T0_31 = _t$3initial:void; $irvar1 = _t$2initial:void; statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$6|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$5|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; n$10|->{fAnnotations:_t$5update:270, fChildren:_t$6update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); @f$2|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1formal, filteredChildren:_t$0update:(z)270, testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$7 = null; @f$6 = null; (@f$5 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$4none:java.util.List*( sub ); statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$2|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] PROP 2 of 9: @f$6 = null; @f$7 = null; n$8 = old_this ; (@f$5 <= -1); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (n$10); RET < TestClass ParentRunner.getTestClass() > (@f$4); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = @f$2formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$2formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; @f$4|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$3|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$3formal, filteredChildren:nullformal(z), testClass:@f$4formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [footprint @f$7 = null; @f$6 = null; (@f$5 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$2formal:org.junit.runners.ParentRunner*( sub ) ; @f$4|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$3rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$4rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] PROP 3 of 9: @f$6 = null; n$8 = old_this ; (@f$5 <= -1); @f$1 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$5); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$4); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (@f$1); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$4); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$4update:268:java.util.List*; $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$5|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$4|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; n$10|->{fAnnotations:_t$4update:270, fChildren:_t$5update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); @f$2|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:@f$1formal(z), testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$6 = null; (@f$5 <= -1); @f$1 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$4none:java.util.List*( sub ); statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$2|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:400:java.util.List( sub ); old_this|->{filteredChildren:@f$1rearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] PROP 4 of 9: @f$6 = null; n$8 = old_this ; (@f$5 <= -1); @f$3 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (n$10); RET < TestClass ParentRunner.getTestClass() > (@f$4); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = @f$2formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$2formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; @f$4|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$3|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:@f$3formal(z), testClass:@f$4formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [footprint @f$6 = null; (@f$5 <= -1); @f$3 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$2formal:org.junit.runners.ParentRunner*( sub ) ; @f$4|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$3|->{}rearrange:400:java.util.List( sub ); old_this|->{filteredChildren:@f$3rearrange:(z)530, testClass:@f$4rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] PROP 5 of 9: @f$6 = ""; n$8 = old_this ; (@f$5 <= -1); @f$3 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (n$10); RET < Class TestClass.getJavaClass() > (@f$3); RET < TestClass ParentRunner.getTestClass() > (@f$4); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = @f$2formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$2formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; @f$4|->{clazz:@f$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$3|->{name:""formal(z)}formal(z):java.lang.Class( sub ); old_this|->{testClass:@f$4formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [footprint @f$6 = ""; (@f$5 <= -1); @f$3 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$2formal:org.junit.runners.ParentRunner*( sub ) ; @f$4|->{clazz:@f$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$3|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); old_this|->{testClass:@f$4rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] PROP 6 of 9: @f$8 = null; n$8 = old_this ; (@f$7 <= -1); @f$4 != null; @f$4 != ""; @f$3 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$6); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268(classRules); UND < Annotation[] Class.getAnnotations() > :216(_t$5); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(@f$1); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Class TestClass.getJavaClass() > (@f$3); RET < String Class.getName() > (@f$4); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$5); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$6update:268:java.util.List*; $irvar0 = 0nullify:void; return = _t$4initial:org.junit.runners.model.Statement*; $T0_31 = _t$3initial:void; $irvar1 = _t$2initial:void; statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$6|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:_t$5update:270, fChildren:_t$6update:(z)270, fDisplayName:@f$4update:270, fTestClass:@f$3update:270, fUniqueId:@f$4update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); @f$4|->{}formal:java.lang.String( sub ); @f$3|->{name:@f$4formal(z)}formal(z):java.lang.Class( sub ); @f$2|->{clazz:@f$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1formal, filteredChildren:_t$0update:(z)270, testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$8 = null; (@f$7 <= -1); @f$4 != null; @f$4 != ""; @f$3 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$6none:java.util.List*( sub ); statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$7rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$4|->{}rearrange:(z)394:java.lang.String( sub ); @f$3|->{name:@f$4rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$2|->{clazz:@f$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] PROP 7 of 9: @f$8 = null; n$8 = old_this ; (@f$7 <= -1); @f$5 != null; @f$4 != null; @f$4 != ""; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (n$10); RET < Class TestClass.getJavaClass() > (@f$5); RET < String Class.getName() > (@f$4); RET < TestClass ParentRunner.getTestClass() > (@f$6); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = @f$2formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$2formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; @f$6|->{clazz:@f$5formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$5|->{name:@f$4formal(z)}formal(z):java.lang.Class( sub ); @f$4|->{}formal:java.lang.String( sub ); @f$3|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$3formal, filteredChildren:nullformal(z), testClass:@f$6formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [footprint @f$8 = null; (@f$7 <= -1); @f$5 != null; @f$4 != null; @f$4 != "" * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$2formal:org.junit.runners.ParentRunner*( sub ) ; @f$6|->{clazz:@f$5rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$5|->{name:@f$4rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$4|->{}rearrange:(z)394:java.lang.String( sub ); @f$3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$3rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$6rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); classRules|->{mIsEmpty:@f$7rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] PROP 8 of 9: n$8 = old_this ; (@f$7 <= -1); @f$4 != null; @f$4 != ""; @f$3 != null; @f$1 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$5); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268(classRules); UND < Annotation[] Class.getAnnotations() > :216(_t$4); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (@f$1); RET < Class TestClass.getJavaClass() > (@f$3); RET < String Class.getName() > (@f$4); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$4); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$6update:268:java.util.List*; $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$5|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:_t$4update:270, fChildren:_t$5update:(z)270, fDisplayName:@f$4update:270, fTestClass:@f$3update:270, fUniqueId:@f$4update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); @f$4|->{}formal:java.lang.String( sub ); @f$3|->{name:@f$4formal(z)}formal(z):java.lang.Class( sub ); @f$2|->{clazz:@f$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:@f$1formal(z), testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint (@f$7 <= -1); @f$4 != null; @f$4 != ""; @f$3 != null; @f$1 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$6none:java.util.List*( sub ); statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$7rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$4|->{}rearrange:(z)394:java.lang.String( sub ); @f$3|->{name:@f$4rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$2|->{clazz:@f$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:400:java.util.List( sub ); old_this|->{filteredChildren:@f$1rearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] PROP 9 of 9: n$8 = old_this ; (@f$7 <= -1); @f$5 != null; @f$4 != null; @f$4 != ""; @f$3 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (n$10); RET < Class TestClass.getJavaClass() > (@f$5); RET < String Class.getName() > (@f$4); RET < TestClass ParentRunner.getTestClass() > (@f$6); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = @f$2formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$2formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; @f$6|->{clazz:@f$5formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$5|->{name:@f$4formal(z)}formal(z):java.lang.Class( sub ); @f$4|->{}formal:java.lang.String( sub ); @f$3|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:@f$3formal(z), testClass:@f$6formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [footprint (@f$7 <= -1); @f$5 != null; @f$4 != null; @f$4 != ""; @f$3 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$2formal:org.junit.runners.ParentRunner*( sub ) ; @f$6|->{clazz:@f$5rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$5|->{name:@f$4rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$4|->{}rearrange:(z)394:java.lang.String( sub ); @f$3|->{}rearrange:400:java.util.List( sub ); old_this|->{filteredChildren:@f$3rearrange:(z)530, testClass:@f$6rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); classRules|->{mIsEmpty:@f$7rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] Instruction *&$irvar1:org.junit.runner.Description*=n$10 [line 270] in vpath_find exp:n$144 vpath_find: cannot find n$144 in vpath_find exp:n$10 vpath_find: cannot find n$10 in vpath_find exp:n$145 vpath_find: cannot find n$145 .... Rearrangement Start .... Exp: &$irvar1 Prop: @f$6 = null; @f$7 = null; n$8 = old_this ; (@f$5 <= -1); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$144); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(n$145); UND < List ParentRunner.classRules() > :268(classRules); UND < List Collections.unmodifiableList(ArrayList) > :534(n$146); LOCKED(@f$1); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (n$146); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (n$145); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$4update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$147initial:org.junit.runners.model.Statement*; $T0_31 = n$148initial:void; $irvar1 = n$149initial:void; statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$150initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; n$145|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; n$144|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:n$145update:270, fChildren:n$144update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); @f$2|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1formal, filteredChildren:n$146update:(z)270, testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$7 = null; @f$6 = null; (@f$5 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$4none:java.util.List*( sub ); statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$2|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] in prop_iter_extend_ptsto lexp: &$irvar1 prop before: @f$6 = null; @f$7 = null; n$8 = old_this ; (@f$5 <= -1); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$144); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(n$145); UND < List ParentRunner.classRules() > :268(classRules); UND < List Collections.unmodifiableList(ArrayList) > :534(n$146); LOCKED(@f$1); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (n$146); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (n$145); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$4update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$147initial:org.junit.runners.model.Statement*; $T0_31 = n$148initial:void; $irvar1 = n$149initial:void; statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$150initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; n$145|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; n$144|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:n$145update:270, fChildren:n$144update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); @f$2|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1formal, filteredChildren:n$146update:(z)270, testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$7 = null; @f$6 = null; (@f$5 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$4none:java.util.List*( sub ); statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$2|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] prop list after: PROP 1 of 1: @f$6 = null; @f$7 = null; n$8 = old_this ; (@f$5 <= -1); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$144); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(n$145); UND < List ParentRunner.classRules() > :268(classRules); UND < List Collections.unmodifiableList(ArrayList) > :534(n$146); LOCKED(@f$1); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (n$146); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (n$145); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$4update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$147initial:org.junit.runners.model.Statement*; $T0_31 = n$148initial:void; $irvar1 = n$149initial:void; statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$150initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; n$145|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; n$144|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:n$145update:270, fChildren:n$144update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); @f$2|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1formal, filteredChildren:n$146update:(z)270, testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$7 = null; @f$6 = null; (@f$5 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$4none:java.util.List*( sub ); statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$2|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] Instruction Returns PROP 1 of 1: @f$6 = null; @f$7 = null; n$8 = old_this ; (@f$5 <= -1); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); UND < List ParentRunner.classRules() > :268(classRules); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(@f$1); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$4update:268:java.util.List*; $irvar0 = 0nullify:void; return = _t$5initial:org.junit.runners.model.Statement*; $T0_31 = _t$4initial:void; $irvar1 = n$10update:270:void; statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$3|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$2|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $irvar1|->{fAnnotations:_t$2update:270, fChildren:_t$3update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); @f$2|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1formal, filteredChildren:_t$0update:(z)270, testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$7 = null; @f$6 = null; (@f$5 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$4none:java.util.List*( sub ); statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$2|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] Instruction *&$irvar1:org.junit.runner.Description*=n$10 [line 270] in vpath_find exp:n$151 vpath_find: cannot find n$151 in vpath_find exp:n$10 vpath_find: cannot find n$10 .... Rearrangement Start .... Exp: &$irvar1 Prop: @f$8 = null; n$8 = old_this ; (@f$7 <= -1); @f$4 != null; @f$4 != ""; @f$3 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$151); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268(classRules); UND < Annotation[] Class.getAnnotations() > :216(n$152); UND < List Collections.unmodifiableList(ArrayList) > :534(n$153); LOCKED(@f$1); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (n$153); RET < Class TestClass.getJavaClass() > (@f$3); RET < String Class.getName() > (@f$4); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (n$152); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$6update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$154initial:org.junit.runners.model.Statement*; $T0_31 = n$155initial:void; $irvar1 = n$156initial:void; statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$157initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; n$151|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:n$152update:270, fChildren:n$151update:(z)270, fDisplayName:@f$4update:270, fTestClass:@f$3update:270, fUniqueId:@f$4update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); @f$4|->{}formal:java.lang.String( sub ); @f$3|->{name:@f$4formal(z)}formal(z):java.lang.Class( sub ); @f$2|->{clazz:@f$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1formal, filteredChildren:n$153update:(z)270, testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$8 = null; (@f$7 <= -1); @f$4 != null; @f$4 != ""; @f$3 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$6none:java.util.List*( sub ); statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$7rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$4|->{}rearrange:(z)394:java.lang.String( sub ); @f$3|->{name:@f$4rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$2|->{clazz:@f$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] in prop_iter_extend_ptsto lexp: &$irvar1 prop before: @f$8 = null; n$8 = old_this ; (@f$7 <= -1); @f$4 != null; @f$4 != ""; @f$3 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$151); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268(classRules); UND < Annotation[] Class.getAnnotations() > :216(n$152); UND < List Collections.unmodifiableList(ArrayList) > :534(n$153); LOCKED(@f$1); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (n$153); RET < Class TestClass.getJavaClass() > (@f$3); RET < String Class.getName() > (@f$4); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (n$152); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$6update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$154initial:org.junit.runners.model.Statement*; $T0_31 = n$155initial:void; $irvar1 = n$156initial:void; statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$157initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; n$151|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:n$152update:270, fChildren:n$151update:(z)270, fDisplayName:@f$4update:270, fTestClass:@f$3update:270, fUniqueId:@f$4update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); @f$4|->{}formal:java.lang.String( sub ); @f$3|->{name:@f$4formal(z)}formal(z):java.lang.Class( sub ); @f$2|->{clazz:@f$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1formal, filteredChildren:n$153update:(z)270, testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$8 = null; (@f$7 <= -1); @f$4 != null; @f$4 != ""; @f$3 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$6none:java.util.List*( sub ); statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$7rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$4|->{}rearrange:(z)394:java.lang.String( sub ); @f$3|->{name:@f$4rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$2|->{clazz:@f$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] prop list after: PROP 1 of 1: @f$8 = null; n$8 = old_this ; (@f$7 <= -1); @f$4 != null; @f$4 != ""; @f$3 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$151); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268(classRules); UND < Annotation[] Class.getAnnotations() > :216(n$152); UND < List Collections.unmodifiableList(ArrayList) > :534(n$153); LOCKED(@f$1); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (n$153); RET < Class TestClass.getJavaClass() > (@f$3); RET < String Class.getName() > (@f$4); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (n$152); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$6update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$154initial:org.junit.runners.model.Statement*; $T0_31 = n$155initial:void; $irvar1 = n$156initial:void; statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$157initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; n$151|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:n$152update:270, fChildren:n$151update:(z)270, fDisplayName:@f$4update:270, fTestClass:@f$3update:270, fUniqueId:@f$4update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); @f$4|->{}formal:java.lang.String( sub ); @f$3|->{name:@f$4formal(z)}formal(z):java.lang.Class( sub ); @f$2|->{clazz:@f$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1formal, filteredChildren:n$153update:(z)270, testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$8 = null; (@f$7 <= -1); @f$4 != null; @f$4 != ""; @f$3 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$6none:java.util.List*( sub ); statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$7rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$4|->{}rearrange:(z)394:java.lang.String( sub ); @f$3|->{name:@f$4rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$2|->{clazz:@f$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] Instruction Returns PROP 1 of 1: @f$8 = null; n$8 = old_this ; (@f$7 <= -1); @f$4 != null; @f$4 != ""; @f$3 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268(classRules); UND < Annotation[] Class.getAnnotations() > :216(_t$2); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(@f$1); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Class TestClass.getJavaClass() > (@f$3); RET < String Class.getName() > (@f$4); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$6update:268:java.util.List*; $irvar0 = 0nullify:void; return = _t$5initial:org.junit.runners.model.Statement*; $T0_31 = _t$4initial:void; $irvar1 = n$10update:270:void; statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$3|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $irvar1|->{fAnnotations:_t$2update:270, fChildren:_t$3update:(z)270, fDisplayName:@f$4update:270, fTestClass:@f$3update:270, fUniqueId:@f$4update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); @f$4|->{}formal:java.lang.String( sub ); @f$3|->{name:@f$4formal(z)}formal(z):java.lang.Class( sub ); @f$2|->{clazz:@f$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1formal, filteredChildren:_t$0update:(z)270, testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$8 = null; (@f$7 <= -1); @f$4 != null; @f$4 != ""; @f$3 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$6none:java.util.List*( sub ); statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$7rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$4|->{}rearrange:(z)394:java.lang.String( sub ); @f$3|->{name:@f$4rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$2|->{clazz:@f$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] Instruction *&$irvar1:org.junit.runner.Description*=n$10 [line 270] in vpath_find exp:n$158 vpath_find: cannot find n$158 in vpath_find exp:n$10 vpath_find: cannot find n$10 in vpath_find exp:n$159 vpath_find: cannot find n$159 .... Rearrangement Start .... Exp: &$irvar1 Prop: @f$6 = null; n$8 = old_this ; (@f$5 <= -1); @f$1 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$158); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(n$159); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (@f$1); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (n$159); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$4update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$160initial:org.junit.runners.model.Statement*; $T0_31 = n$161initial:void; $irvar1 = n$162initial:void; statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$163initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; n$159|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; n$158|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:n$159update:270, fChildren:n$158update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); @f$2|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:@f$1formal(z), testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$6 = null; (@f$5 <= -1); @f$1 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$4none:java.util.List*( sub ); statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$2|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:400:java.util.List( sub ); old_this|->{filteredChildren:@f$1rearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] in prop_iter_extend_ptsto lexp: &$irvar1 prop before: @f$6 = null; n$8 = old_this ; (@f$5 <= -1); @f$1 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$158); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(n$159); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (@f$1); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (n$159); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$4update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$160initial:org.junit.runners.model.Statement*; $T0_31 = n$161initial:void; $irvar1 = n$162initial:void; statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$163initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; n$159|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; n$158|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:n$159update:270, fChildren:n$158update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); @f$2|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:@f$1formal(z), testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$6 = null; (@f$5 <= -1); @f$1 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$4none:java.util.List*( sub ); statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$2|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:400:java.util.List( sub ); old_this|->{filteredChildren:@f$1rearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] prop list after: PROP 1 of 1: @f$6 = null; n$8 = old_this ; (@f$5 <= -1); @f$1 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$158); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(n$159); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (@f$1); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (n$159); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$4update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$160initial:org.junit.runners.model.Statement*; $T0_31 = n$161initial:void; $irvar1 = n$162initial:void; statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$163initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; n$159|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; n$158|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:n$159update:270, fChildren:n$158update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); @f$2|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:@f$1formal(z), testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$6 = null; (@f$5 <= -1); @f$1 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$4none:java.util.List*( sub ); statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$2|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:400:java.util.List( sub ); old_this|->{filteredChildren:@f$1rearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] Instruction Returns PROP 1 of 1: @f$6 = null; n$8 = old_this ; (@f$5 <= -1); @f$1 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$1); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (@f$1); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$4update:268:java.util.List*; $irvar0 = 0nullify:void; return = _t$4initial:org.junit.runners.model.Statement*; $T0_31 = _t$3initial:void; $irvar1 = n$10update:270:void; statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$2|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$1|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $irvar1|->{fAnnotations:_t$1update:270, fChildren:_t$2update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); @f$2|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:@f$1formal(z), testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$6 = null; (@f$5 <= -1); @f$1 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$4none:java.util.List*( sub ); statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$2|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:400:java.util.List( sub ); old_this|->{filteredChildren:@f$1rearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] Instruction *&$irvar1:org.junit.runner.Description*=n$10 [line 270] in vpath_find exp:n$164 vpath_find: cannot find n$164 in vpath_find exp:n$10 vpath_find: cannot find n$10 .... Rearrangement Start .... Exp: &$irvar1 Prop: n$8 = old_this ; (@f$7 <= -1); @f$4 != null; @f$4 != ""; @f$3 != null; @f$1 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$164); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268(classRules); UND < Annotation[] Class.getAnnotations() > :216(n$165); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (@f$1); RET < Class TestClass.getJavaClass() > (@f$3); RET < String Class.getName() > (@f$4); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (n$165); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$6update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$166initial:org.junit.runners.model.Statement*; $T0_31 = n$167initial:void; $irvar1 = n$168initial:void; statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$169initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; n$164|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:n$165update:270, fChildren:n$164update:(z)270, fDisplayName:@f$4update:270, fTestClass:@f$3update:270, fUniqueId:@f$4update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); @f$4|->{}formal:java.lang.String( sub ); @f$3|->{name:@f$4formal(z)}formal(z):java.lang.Class( sub ); @f$2|->{clazz:@f$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:@f$1formal(z), testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint (@f$7 <= -1); @f$4 != null; @f$4 != ""; @f$3 != null; @f$1 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$6none:java.util.List*( sub ); statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$7rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$4|->{}rearrange:(z)394:java.lang.String( sub ); @f$3|->{name:@f$4rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$2|->{clazz:@f$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:400:java.util.List( sub ); old_this|->{filteredChildren:@f$1rearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] in prop_iter_extend_ptsto lexp: &$irvar1 prop before: n$8 = old_this ; (@f$7 <= -1); @f$4 != null; @f$4 != ""; @f$3 != null; @f$1 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$164); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268(classRules); UND < Annotation[] Class.getAnnotations() > :216(n$165); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (@f$1); RET < Class TestClass.getJavaClass() > (@f$3); RET < String Class.getName() > (@f$4); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (n$165); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$6update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$166initial:org.junit.runners.model.Statement*; $T0_31 = n$167initial:void; $irvar1 = n$168initial:void; statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$169initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; n$164|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:n$165update:270, fChildren:n$164update:(z)270, fDisplayName:@f$4update:270, fTestClass:@f$3update:270, fUniqueId:@f$4update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); @f$4|->{}formal:java.lang.String( sub ); @f$3|->{name:@f$4formal(z)}formal(z):java.lang.Class( sub ); @f$2|->{clazz:@f$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:@f$1formal(z), testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint (@f$7 <= -1); @f$4 != null; @f$4 != ""; @f$3 != null; @f$1 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$6none:java.util.List*( sub ); statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$7rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$4|->{}rearrange:(z)394:java.lang.String( sub ); @f$3|->{name:@f$4rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$2|->{clazz:@f$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:400:java.util.List( sub ); old_this|->{filteredChildren:@f$1rearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] prop list after: PROP 1 of 1: n$8 = old_this ; (@f$7 <= -1); @f$4 != null; @f$4 != ""; @f$3 != null; @f$1 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$164); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268(classRules); UND < Annotation[] Class.getAnnotations() > :216(n$165); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (@f$1); RET < Class TestClass.getJavaClass() > (@f$3); RET < String Class.getName() > (@f$4); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (n$165); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$6update:268:java.util.List*; $irvar0 = 0nullify:void; return = n$166initial:org.junit.runners.model.Statement*; $T0_31 = n$167initial:void; $irvar1 = n$168initial:void; statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$169initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; n$164|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:n$165update:270, fChildren:n$164update:(z)270, fDisplayName:@f$4update:270, fTestClass:@f$3update:270, fUniqueId:@f$4update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); @f$4|->{}formal:java.lang.String( sub ); @f$3|->{name:@f$4formal(z)}formal(z):java.lang.Class( sub ); @f$2|->{clazz:@f$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:@f$1formal(z), testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint (@f$7 <= -1); @f$4 != null; @f$4 != ""; @f$3 != null; @f$1 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$6none:java.util.List*( sub ); statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$7rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$4|->{}rearrange:(z)394:java.lang.String( sub ); @f$3|->{name:@f$4rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$2|->{clazz:@f$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:400:java.util.List( sub ); old_this|->{filteredChildren:@f$1rearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] Instruction Returns PROP 1 of 1: n$8 = old_this ; (@f$7 <= -1); @f$4 != null; @f$4 != ""; @f$3 != null; @f$1 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268(classRules); UND < Annotation[] Class.getAnnotations() > :216(_t$1); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (@f$1); RET < Class TestClass.getJavaClass() > (@f$3); RET < String Class.getName() > (@f$4); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$6update:268:java.util.List*; $irvar0 = 0nullify:void; return = _t$4initial:org.junit.runners.model.Statement*; $T0_31 = _t$3initial:void; $irvar1 = n$10update:270:void; statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = @f$0formal:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$2|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $irvar1|->{fAnnotations:_t$1update:270, fChildren:_t$2update:(z)270, fDisplayName:@f$4update:270, fTestClass:@f$3update:270, fUniqueId:@f$4update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); @f$4|->{}formal:java.lang.String( sub ); @f$3|->{name:@f$4formal(z)}formal(z):java.lang.Class( sub ); @f$2|->{clazz:@f$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:@f$1formal(z), testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint (@f$7 <= -1); @f$4 != null; @f$4 != ""; @f$3 != null; @f$1 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$6none:java.util.List*( sub ); statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$7rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$4|->{}rearrange:(z)394:java.lang.String( sub ); @f$3|->{name:@f$4rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$2|->{clazz:@f$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:400:java.util.List( sub ); old_this|->{filteredChildren:@f$1rearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] Skipping instr *&$irvar1:org.junit.runner.Description*=n$10 [line 270] due to exception Skipping instr *&$irvar1:org.junit.runner.Description*=n$10 [line 270] due to exception Skipping instr *&$irvar1:org.junit.runner.Description*=n$10 [line 270] due to exception Skipping instr *&$irvar1:org.junit.runner.Description*=n$10 [line 270] due to exception Skipping instr *&$irvar1:org.junit.runner.Description*=n$10 [line 270] due to exception Instruction NULLIFY(&this); [line 270] in vpath_find exp:_t$3 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$3 in vpath_find exp:n$10 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find n$10 in vpath_find exp:_t$2 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$2 Instruction Returns PROP 1 of 1: @f$6 = null; @f$7 = null; n$8 = old_this ; (@f$5 <= -1); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); UND < List ParentRunner.classRules() > :268(classRules); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(@f$1); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$4update:268:java.util.List*; $irvar0 = 0nullify:void; return = _t$5initial:org.junit.runners.model.Statement*; $T0_31 = _t$4initial:void; $irvar1 = n$10update:270:void; statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$3|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$2|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $irvar1|->{fAnnotations:_t$2update:270, fChildren:_t$3update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); @f$2|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1formal, filteredChildren:_t$0update:(z)270, testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$7 = null; @f$6 = null; (@f$5 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$4none:java.util.List*( sub ); statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$2|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] Instruction NULLIFY(&this); [line 270] in vpath_find exp:_t$3 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$3 in vpath_find exp:n$10 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find n$10 Instruction Returns PROP 1 of 1: @f$8 = null; n$8 = old_this ; (@f$7 <= -1); @f$4 != null; @f$4 != ""; @f$3 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268(classRules); UND < Annotation[] Class.getAnnotations() > :216(_t$2); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(@f$1); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Class TestClass.getJavaClass() > (@f$3); RET < String Class.getName() > (@f$4); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$6update:268:java.util.List*; $irvar0 = 0nullify:void; return = _t$5initial:org.junit.runners.model.Statement*; $T0_31 = _t$4initial:void; $irvar1 = n$10update:270:void; statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$3|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $irvar1|->{fAnnotations:_t$2update:270, fChildren:_t$3update:(z)270, fDisplayName:@f$4update:270, fTestClass:@f$3update:270, fUniqueId:@f$4update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); @f$4|->{}formal:java.lang.String( sub ); @f$3|->{name:@f$4formal(z)}formal(z):java.lang.Class( sub ); @f$2|->{clazz:@f$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1formal, filteredChildren:_t$0update:(z)270, testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$8 = null; (@f$7 <= -1); @f$4 != null; @f$4 != ""; @f$3 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$6none:java.util.List*( sub ); statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$7rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$4|->{}rearrange:(z)394:java.lang.String( sub ); @f$3|->{name:@f$4rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$2|->{clazz:@f$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] Instruction NULLIFY(&this); [line 270] in vpath_find exp:_t$2 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$2 in vpath_find exp:n$10 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find n$10 in vpath_find exp:_t$1 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$1 Instruction Returns PROP 1 of 1: @f$6 = null; n$8 = old_this ; (@f$5 <= -1); @f$1 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$1); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (@f$1); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$4update:268:java.util.List*; $irvar0 = 0nullify:void; return = _t$4initial:org.junit.runners.model.Statement*; $T0_31 = _t$3initial:void; $irvar1 = n$10update:270:void; statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$2|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$1|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $irvar1|->{fAnnotations:_t$1update:270, fChildren:_t$2update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); @f$2|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:@f$1formal(z), testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$6 = null; (@f$5 <= -1); @f$1 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$4none:java.util.List*( sub ); statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$2|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:400:java.util.List( sub ); old_this|->{filteredChildren:@f$1rearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] Instruction NULLIFY(&this); [line 270] in vpath_find exp:_t$2 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$2 in vpath_find exp:n$10 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find n$10 Instruction Returns PROP 1 of 1: n$8 = old_this ; (@f$7 <= -1); @f$4 != null; @f$4 != ""; @f$3 != null; @f$1 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268(classRules); UND < Annotation[] Class.getAnnotations() > :216(_t$1); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (@f$1); RET < Class TestClass.getJavaClass() > (@f$3); RET < String Class.getName() > (@f$4); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$6update:268:java.util.List*; $irvar0 = 0nullify:void; return = _t$4initial:org.junit.runners.model.Statement*; $T0_31 = _t$3initial:void; $irvar1 = n$10update:270:void; statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$2|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $irvar1|->{fAnnotations:_t$1update:270, fChildren:_t$2update:(z)270, fDisplayName:@f$4update:270, fTestClass:@f$3update:270, fUniqueId:@f$4update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); @f$4|->{}formal:java.lang.String( sub ); @f$3|->{name:@f$4formal(z)}formal(z):java.lang.Class( sub ); @f$2|->{clazz:@f$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:@f$1formal(z), testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint (@f$7 <= -1); @f$4 != null; @f$4 != ""; @f$3 != null; @f$1 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$6none:java.util.List*( sub ); statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$7rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$4|->{}rearrange:(z)394:java.lang.String( sub ); @f$3|->{name:@f$4rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$2|->{clazz:@f$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:400:java.util.List( sub ); old_this|->{filteredChildren:@f$1rearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] Instruction NULLIFY(&this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: n$8 = old_this ; (@f$7 <= -1); @f$4 != null; @f$3 != null; @f$3 != ""; @f$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (n$10); RET < Class TestClass.getJavaClass() > (@f$4); RET < String Class.getName() > (@f$3); RET < TestClass ParentRunner.getTestClass() > (@f$5); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$6formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; old_this|->{filteredChildren:@f$2formal(z), testClass:@f$5formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); @f$5|->{clazz:@f$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$4|->{name:@f$3formal(z)}formal(z):java.lang.Class( sub ); @f$3|->{}formal:java.lang.String( sub ); @f$2|->{}formal:java.util.List( sub ); classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [footprint (@f$7 <= -1); @f$4 != null; @f$3 != null; @f$3 != ""; @f$2 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$6formal:org.junit.runners.ParentRunner*( sub ) ; old_this|->{filteredChildren:@f$2rearrange:(z)530, testClass:@f$5rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); @f$5|->{clazz:@f$4rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$4|->{name:@f$3rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$3|->{}rearrange:(z)394:java.lang.String( sub ); @f$2|->{}rearrange:400:java.util.List( sub ); classRules|->{mIsEmpty:@f$7rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] Instruction NULLIFY(&this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: @f$8 = null; n$8 = old_this ; (@f$7 <= -1); @f$4 != null; @f$3 != null; @f$3 != ""; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (n$10); RET < Class TestClass.getJavaClass() > (@f$4); RET < String Class.getName() > (@f$3); RET < TestClass ParentRunner.getTestClass() > (@f$5); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$6formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; old_this|->{childrenLock:@f$2formal, filteredChildren:nullformal(z), testClass:@f$5formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); @f$5|->{clazz:@f$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$4|->{name:@f$3formal(z)}formal(z):java.lang.Class( sub ); @f$3|->{}formal:java.lang.String( sub ); @f$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [footprint @f$8 = null; (@f$7 <= -1); @f$4 != null; @f$3 != null; @f$3 != "" * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$6formal:org.junit.runners.ParentRunner*( sub ) ; old_this|->{childrenLock:@f$2rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$5rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); @f$5|->{clazz:@f$4rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$4|->{name:@f$3rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$3|->{}rearrange:(z)394:java.lang.String( sub ); @f$2|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); classRules|->{mIsEmpty:@f$7rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] Instruction NULLIFY(&this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: @f$6 = ""; n$8 = old_this ; (@f$5 <= -1); @f$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (n$10); RET < Class TestClass.getJavaClass() > (@f$2); RET < TestClass ParentRunner.getTestClass() > (@f$3); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$4formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; old_this|->{testClass:@f$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); @f$3|->{clazz:@f$2formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$2|->{name:""formal(z)}formal(z):java.lang.Class( sub ); classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [footprint @f$6 = ""; (@f$5 <= -1); @f$2 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$4formal:org.junit.runners.ParentRunner*( sub ) ; old_this|->{testClass:@f$3rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); @f$3|->{clazz:@f$2rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$2|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] Instruction NULLIFY(&this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: @f$6 = null; n$8 = old_this ; (@f$5 <= -1); @f$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (n$10); RET < TestClass ParentRunner.getTestClass() > (@f$3); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$4formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; old_this|->{filteredChildren:@f$2formal(z), testClass:@f$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); @f$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$2|->{}formal:java.util.List( sub ); classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [footprint @f$6 = null; (@f$5 <= -1); @f$2 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$4formal:org.junit.runners.ParentRunner*( sub ) ; old_this|->{filteredChildren:@f$2rearrange:(z)530, testClass:@f$3rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); @f$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$2|->{}rearrange:400:java.util.List( sub ); classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] Instruction NULLIFY(&this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: @f$6 = null; @f$7 = null; n$8 = old_this ; (@f$5 <= -1); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (n$10); RET < TestClass ParentRunner.getTestClass() > (@f$3); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$4formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; old_this|->{childrenLock:@f$2formal, filteredChildren:nullformal(z), testClass:@f$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); @f$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [footprint @f$7 = null; @f$6 = null; (@f$5 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$4formal:org.junit.runners.ParentRunner*( sub ) ; old_this|->{childrenLock:@f$2rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$3rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); @f$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$2|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] Instruction EXIT_SCOPE(_,n$8,n$10,this); [line 270] in vpath_find exp:_t$3 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$3 in vpath_find exp:n$10 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find n$10 in vpath_find exp:_t$2 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$2 Instruction Returns PROP 1 of 1: @f$6 = null; @f$7 = null ; (@f$5 <= -1); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$4); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); UND < List ParentRunner.classRules() > :268(classRules); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(@f$1); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$3); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$4update:268:java.util.List*; $irvar0 = 0nullify:void; return = _t$6initial:org.junit.runners.model.Statement*; $T0_31 = _t$5initial:void; $irvar1 = _t$2update:270:void; statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$4|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$3|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $irvar1|->{fAnnotations:_t$3update:270, fChildren:_t$4update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); @f$2|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1formal, filteredChildren:_t$0update:(z)270, testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$7 = null; @f$6 = null; (@f$5 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$4none:java.util.List*( sub ); statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$2|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] Instruction EXIT_SCOPE(_,n$8,n$10,this); [line 270] in vpath_find exp:_t$3 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$3 in vpath_find exp:n$10 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find n$10 Instruction Returns PROP 1 of 1: @f$8 = null ; (@f$7 <= -1); @f$4 != null; @f$4 != ""; @f$3 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$4); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268(classRules); UND < Annotation[] Class.getAnnotations() > :216(_t$3); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(@f$1); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Class TestClass.getJavaClass() > (@f$3); RET < String Class.getName() > (@f$4); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$3); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$6update:268:java.util.List*; $irvar0 = 0nullify:void; return = _t$6initial:org.junit.runners.model.Statement*; $T0_31 = _t$5initial:void; $irvar1 = _t$2update:270:void; statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$4|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $irvar1|->{fAnnotations:_t$3update:270, fChildren:_t$4update:(z)270, fDisplayName:@f$4update:270, fTestClass:@f$3update:270, fUniqueId:@f$4update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); @f$4|->{}formal:java.lang.String( sub ); @f$3|->{name:@f$4formal(z)}formal(z):java.lang.Class( sub ); @f$2|->{clazz:@f$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1formal, filteredChildren:_t$0update:(z)270, testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$8 = null; (@f$7 <= -1); @f$4 != null; @f$4 != ""; @f$3 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$6none:java.util.List*( sub ); statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$7rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$4|->{}rearrange:(z)394:java.lang.String( sub ); @f$3|->{name:@f$4rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$2|->{clazz:@f$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] Instruction EXIT_SCOPE(_,n$8,n$10,this); [line 270] in vpath_find exp:_t$2 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$2 in vpath_find exp:n$10 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find n$10 in vpath_find exp:_t$1 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$1 Instruction Returns PROP 1 of 1: @f$6 = null ; (@f$5 <= -1); @f$1 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (@f$1); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$4update:268:java.util.List*; $irvar0 = 0nullify:void; return = _t$5initial:org.junit.runners.model.Statement*; $T0_31 = _t$4initial:void; $irvar1 = _t$1update:270:void; statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$3|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$2|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $irvar1|->{fAnnotations:_t$2update:270, fChildren:_t$3update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); @f$2|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:@f$1formal(z), testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$6 = null; (@f$5 <= -1); @f$1 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$4none:java.util.List*( sub ); statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$2|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:400:java.util.List( sub ); old_this|->{filteredChildren:@f$1rearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] Instruction EXIT_SCOPE(_,n$8,n$10,this); [line 270] in vpath_find exp:_t$2 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$2 in vpath_find exp:n$10 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find n$10 Instruction Returns PROP 1 of 1: (@f$7 <= -1); @f$4 != null; @f$4 != ""; @f$3 != null; @f$1 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268(classRules); UND < Annotation[] Class.getAnnotations() > :216(_t$2); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (@f$1); RET < Class TestClass.getJavaClass() > (@f$3); RET < String Class.getName() > (@f$4); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$6update:268:java.util.List*; $irvar0 = 0nullify:void; return = _t$5initial:org.junit.runners.model.Statement*; $T0_31 = _t$4initial:void; $irvar1 = _t$1update:270:void; statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$3|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $irvar1|->{fAnnotations:_t$2update:270, fChildren:_t$3update:(z)270, fDisplayName:@f$4update:270, fTestClass:@f$3update:270, fUniqueId:@f$4update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); @f$4|->{}formal:java.lang.String( sub ); @f$3|->{name:@f$4formal(z)}formal(z):java.lang.Class( sub ); @f$2|->{clazz:@f$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:@f$1formal(z), testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint (@f$7 <= -1); @f$4 != null; @f$4 != ""; @f$3 != null; @f$1 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$6none:java.util.List*( sub ); statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$7rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$4|->{}rearrange:(z)394:java.lang.String( sub ); @f$3|->{name:@f$4rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$2|->{clazz:@f$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:400:java.util.List( sub ); old_this|->{filteredChildren:@f$1rearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] Instruction EXIT_SCOPE(_,n$8,n$10,this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: @f$8 = null ; (@f$7 <= -1); @f$4 != null; @f$3 != null; @f$3 != ""; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (_t$4); RET < Class TestClass.getJavaClass() > (@f$4); RET < String Class.getName() > (@f$3); RET < TestClass ParentRunner.getTestClass() > (@f$5); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$6formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; old_this|->{childrenLock:@f$2formal, filteredChildren:nullformal(z), testClass:@f$5formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); @f$5|->{clazz:@f$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$4|->{name:@f$3formal(z)}formal(z):java.lang.Class( sub ); @f$3|->{}formal:java.lang.String( sub ); @f$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [footprint @f$8 = null; (@f$7 <= -1); @f$4 != null; @f$3 != null; @f$3 != "" * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$6formal:org.junit.runners.ParentRunner*( sub ) ; old_this|->{childrenLock:@f$2rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$5rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); @f$5|->{clazz:@f$4rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$4|->{name:@f$3rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$3|->{}rearrange:(z)394:java.lang.String( sub ); @f$2|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); classRules|->{mIsEmpty:@f$7rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] Instruction EXIT_SCOPE(_,n$8,n$10,this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: (@f$7 <= -1); @f$4 != null; @f$3 != null; @f$3 != ""; @f$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (_t$4); RET < Class TestClass.getJavaClass() > (@f$4); RET < String Class.getName() > (@f$3); RET < TestClass ParentRunner.getTestClass() > (@f$5); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$6formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; old_this|->{filteredChildren:@f$2formal(z), testClass:@f$5formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); @f$5|->{clazz:@f$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$4|->{name:@f$3formal(z)}formal(z):java.lang.Class( sub ); @f$3|->{}formal:java.lang.String( sub ); @f$2|->{}formal:java.util.List( sub ); classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [footprint (@f$7 <= -1); @f$4 != null; @f$3 != null; @f$3 != ""; @f$2 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$6formal:org.junit.runners.ParentRunner*( sub ) ; old_this|->{filteredChildren:@f$2rearrange:(z)530, testClass:@f$5rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); @f$5|->{clazz:@f$4rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$4|->{name:@f$3rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$3|->{}rearrange:(z)394:java.lang.String( sub ); @f$2|->{}rearrange:400:java.util.List( sub ); classRules|->{mIsEmpty:@f$7rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] Instruction EXIT_SCOPE(_,n$8,n$10,this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: @f$6 = null; @f$7 = null ; (@f$5 <= -1); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (_t$4); RET < TestClass ParentRunner.getTestClass() > (@f$3); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$4formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; old_this|->{childrenLock:@f$2formal, filteredChildren:nullformal(z), testClass:@f$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); @f$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [footprint @f$7 = null; @f$6 = null; (@f$5 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$4formal:org.junit.runners.ParentRunner*( sub ) ; old_this|->{childrenLock:@f$2rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$3rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); @f$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$2|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] Instruction EXIT_SCOPE(_,n$8,n$10,this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: @f$6 = null ; (@f$5 <= -1); @f$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (_t$4); RET < TestClass ParentRunner.getTestClass() > (@f$3); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$4formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; old_this|->{filteredChildren:@f$2formal(z), testClass:@f$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); @f$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$2|->{}formal:java.util.List( sub ); classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [footprint @f$6 = null; (@f$5 <= -1); @f$2 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$4formal:org.junit.runners.ParentRunner*( sub ) ; old_this|->{filteredChildren:@f$2rearrange:(z)530, testClass:@f$3rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); @f$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$2|->{}rearrange:400:java.util.List( sub ); classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] Instruction EXIT_SCOPE(_,n$8,n$10,this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: @f$6 = "" ; (@f$5 <= -1); @f$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (_t$4); RET < Class TestClass.getJavaClass() > (@f$2); RET < TestClass ParentRunner.getTestClass() > (@f$3); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$4formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; old_this|->{testClass:@f$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); @f$3|->{clazz:@f$2formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$2|->{name:""formal(z)}formal(z):java.lang.Class( sub ); classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [footprint @f$6 = ""; (@f$5 <= -1); @f$2 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$4formal:org.junit.runners.ParentRunner*( sub ) ; old_this|->{testClass:@f$3rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); @f$3|->{clazz:@f$2rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$2|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] .... After Symbolic Execution .... PROP 1 of 9: @f$6 = null; @f$7 = null ; (@f$5 <= -1); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$4); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); UND < List ParentRunner.classRules() > :268(classRules); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(@f$1); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$3); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$4update:268:java.util.List*; $irvar0 = 0nullify:void; return = _t$6initial:org.junit.runners.model.Statement*; $T0_31 = _t$5initial:void; $irvar1 = _t$2update:270:void; statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$4|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$3|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $irvar1|->{fAnnotations:_t$3update:270, fChildren:_t$4update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); @f$2|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1formal, filteredChildren:_t$0update:(z)270, testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$7 = null; @f$6 = null; (@f$5 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$4none:java.util.List*( sub ); statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$2|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] PROP 2 of 9: @f$8 = null ; (@f$7 <= -1); @f$4 != null; @f$4 != ""; @f$3 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$4); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268(classRules); UND < Annotation[] Class.getAnnotations() > :216(_t$3); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(@f$1); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Class TestClass.getJavaClass() > (@f$3); RET < String Class.getName() > (@f$4); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$3); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$6update:268:java.util.List*; $irvar0 = 0nullify:void; return = _t$6initial:org.junit.runners.model.Statement*; $T0_31 = _t$5initial:void; $irvar1 = _t$2update:270:void; statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$4|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $irvar1|->{fAnnotations:_t$3update:270, fChildren:_t$4update:(z)270, fDisplayName:@f$4update:270, fTestClass:@f$3update:270, fUniqueId:@f$4update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); @f$4|->{}formal:java.lang.String( sub ); @f$3|->{name:@f$4formal(z)}formal(z):java.lang.Class( sub ); @f$2|->{clazz:@f$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1formal, filteredChildren:_t$0update:(z)270, testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$8 = null; (@f$7 <= -1); @f$4 != null; @f$4 != ""; @f$3 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$6none:java.util.List*( sub ); statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$7rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$4|->{}rearrange:(z)394:java.lang.String( sub ); @f$3|->{name:@f$4rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$2|->{clazz:@f$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:@f$1rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] PROP 3 of 9: @f$6 = null ; (@f$5 <= -1); @f$1 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (@f$1); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$4update:268:java.util.List*; $irvar0 = 0nullify:void; return = _t$5initial:org.junit.runners.model.Statement*; $T0_31 = _t$4initial:void; $irvar1 = _t$1update:270:void; statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$3|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$2|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $irvar1|->{fAnnotations:_t$2update:270, fChildren:_t$3update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); @f$2|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:@f$1formal(z), testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint @f$6 = null; (@f$5 <= -1); @f$1 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$4none:java.util.List*( sub ); statement = @f$3formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$2|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:400:java.util.List( sub ); old_this|->{filteredChildren:@f$1rearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] PROP 4 of 9: (@f$7 <= -1); @f$4 != null; @f$4 != ""; @f$3 != null; @f$1 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268(classRules); UND < Annotation[] Class.getAnnotations() > :216(_t$2); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (@f$1); RET < Class TestClass.getJavaClass() > (@f$3); RET < String Class.getName() > (@f$4); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2); RET < TestClass ParentRunner.getTestClass() > (@f$2); RET < boolean List.isEmpty() > (0) ; classRules = @f$6update:268:java.util.List*; $irvar0 = 0nullify:void; return = _t$5initial:org.junit.runners.model.Statement*; $T0_31 = _t$4initial:void; $irvar1 = _t$1update:270:void; statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; _t$3|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $irvar1|->{fAnnotations:_t$2update:270, fChildren:_t$3update:(z)270, fDisplayName:@f$4update:270, fTestClass:@f$3update:270, fUniqueId:@f$4update:270}formal(z):org.junit.runner.Description; classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); @f$4|->{}formal:java.lang.String( sub ); @f$3|->{name:@f$4formal(z)}formal(z):java.lang.Class( sub ); @f$2|->{clazz:@f$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$1|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:@f$1formal(z), testClass:@f$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [footprint (@f$7 <= -1); @f$4 != null; @f$4 != ""; @f$3 != null; @f$1 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$6none:java.util.List*( sub ); statement = @f$5formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$0formal:org.junit.runners.ParentRunner*( sub ) ; classRules|->{mIsEmpty:@f$7rearrange:(z)27}rearrange:(z)269:java.util.List( sub ); @f$4|->{}rearrange:(z)394:java.lang.String( sub ); @f$3|->{name:@f$4rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$2|->{clazz:@f$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$1|->{}rearrange:400:java.util.List( sub ); old_this|->{filteredChildren:@f$1rearrange:(z)530, testClass:@f$2rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ) ] PROP 5 of 9: @f$8 = null ; (@f$7 <= -1); @f$4 != null; @f$3 != null; @f$3 != ""; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (_t$4); RET < Class TestClass.getJavaClass() > (@f$4); RET < String Class.getName() > (@f$3); RET < TestClass ParentRunner.getTestClass() > (@f$5); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$6formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; old_this|->{childrenLock:@f$2formal, filteredChildren:nullformal(z), testClass:@f$5formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); @f$5|->{clazz:@f$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$4|->{name:@f$3formal(z)}formal(z):java.lang.Class( sub ); @f$3|->{}formal:java.lang.String( sub ); @f$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [footprint @f$8 = null; (@f$7 <= -1); @f$4 != null; @f$3 != null; @f$3 != "" * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$6formal:org.junit.runners.ParentRunner*( sub ) ; old_this|->{childrenLock:@f$2rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$5rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); @f$5|->{clazz:@f$4rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$4|->{name:@f$3rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$3|->{}rearrange:(z)394:java.lang.String( sub ); @f$2|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); classRules|->{mIsEmpty:@f$7rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] PROP 6 of 9: (@f$7 <= -1); @f$4 != null; @f$3 != null; @f$3 != ""; @f$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (_t$4); RET < Class TestClass.getJavaClass() > (@f$4); RET < String Class.getName() > (@f$3); RET < TestClass ParentRunner.getTestClass() > (@f$5); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$6formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; old_this|->{filteredChildren:@f$2formal(z), testClass:@f$5formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); @f$5|->{clazz:@f$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$4|->{name:@f$3formal(z)}formal(z):java.lang.Class( sub ); @f$3|->{}formal:java.lang.String( sub ); @f$2|->{}formal:java.util.List( sub ); classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [footprint (@f$7 <= -1); @f$4 != null; @f$3 != null; @f$3 != ""; @f$2 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$6formal:org.junit.runners.ParentRunner*( sub ) ; old_this|->{filteredChildren:@f$2rearrange:(z)530, testClass:@f$5rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); @f$5|->{clazz:@f$4rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$4|->{name:@f$3rearrange:(z)15}rearrange:394:java.lang.Class( sub ); @f$3|->{}rearrange:(z)394:java.lang.String( sub ); @f$2|->{}rearrange:400:java.util.List( sub ); classRules|->{mIsEmpty:@f$7rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] PROP 7 of 9: @f$6 = null; @f$7 = null ; (@f$5 <= -1); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (_t$4); RET < TestClass ParentRunner.getTestClass() > (@f$3); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$4formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; old_this|->{childrenLock:@f$2formal, filteredChildren:nullformal(z), testClass:@f$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); @f$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [footprint @f$7 = null; @f$6 = null; (@f$5 <= -1) * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$4formal:org.junit.runners.ParentRunner*( sub ) ; old_this|->{childrenLock:@f$2rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:@f$3rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); @f$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$2|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] PROP 8 of 9: @f$6 = null ; (@f$5 <= -1); @f$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (_t$4); RET < TestClass ParentRunner.getTestClass() > (@f$3); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$4formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; old_this|->{filteredChildren:@f$2formal(z), testClass:@f$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); @f$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$2|->{}formal:java.util.List( sub ); classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [footprint @f$6 = null; (@f$5 <= -1); @f$2 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$4formal:org.junit.runners.ParentRunner*( sub ) ; old_this|->{filteredChildren:@f$2rearrange:(z)530, testClass:@f$3rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); @f$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$2|->{}rearrange:400:java.util.List( sub ); classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ] PROP 9 of 9: @f$6 = "" ; (@f$5 <= -1); @f$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268(classRules); RET < Description ParentRunner.getDescription() > (_t$4); RET < Class TestClass.getJavaClass() > (@f$2); RET < TestClass ParentRunner.getTestClass() > (@f$3); RET < boolean List.isEmpty() > (0) ; classRules = @f$0update:268:java.util.List*; $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = @f$4formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; old_this|->{testClass:@f$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); @f$3|->{clazz:@f$2formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); @f$2|->{name:""formal(z)}formal(z):java.lang.Class( sub ); classRules|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [footprint @f$6 = ""; (@f$5 <= -1); @f$2 != null * $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = @f$0none:java.util.List*( sub ); statement = @f$1formal:org.junit.internal.runners.statements.RunBefores*( sub ); this = @f$4formal:org.junit.runners.ParentRunner*( sub ) ; old_this|->{testClass:@f$3rearrange:(z)355}rearrange:(z)268:org.junit.runners.ParentRunner( sub ); @f$3|->{clazz:@f$2rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); @f$2|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); classRules|->{mIsEmpty:@f$5rearrange:(z)27}rearrange:(z)269:java.util.List( sub ) ]
node10#session20(270) biabduction **** [RE:Pending] Statement ParentRunner.withClassRules(RunBefores) Node: 10, Procedure: Statement ParentRunner.withClassRules(RunBefores), Todo: 1 **** PROP 1 of 1: (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = val$1formal:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) .... Instructions: .... n$8=*&this:org.junit.runners.ParentRunner* [line 270]; _=*n$8:org.junit.runners.ParentRunner [line 270]; n$10=_fun_Description ParentRunner.getDescription()(n$8:org.junit.runners.ParentRunner*) virtual [line 270]; *&$irvar1:org.junit.runner.Description*=n$10 [line 270]; NULLIFY(&this); [line 270]; EXIT_SCOPE(_,n$8,n$10,this); [line 270]; Processing prop 1/1 Instruction n$8=*&this:org.junit.runners.ParentRunner* [line 270] .... Rearrangement Start .... Exp: &this Prop: (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$55initial:org.junit.runners.model.Statement*; $T0_31 = n$56initial:void; $irvar1 = n$57initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$58initial:void; this = val$1formal:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 1: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction _=*n$8:org.junit.runners.ParentRunner [line 270] .... Rearrangement Start .... Exp: n$8 Prop: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$59initial:org.junit.runners.model.Statement*; $T0_31 = n$60initial:void; $irvar1 = n$61initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$62initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 1: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction n$10=_fun_Description ParentRunner.getDescription()(n$8:org.junit.runners.ParentRunner*) virtual [line 270] Found 5 specs for function org.junit.runners.ParentRunner.getDescription():org.junit.runner.Description START EXECUTING SPECS FOR org.junit.runners.ParentRunner.getDescription():org.junit.runner.Description from state val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$63initial:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) EXECUTING SPEC 1/5 ACTUAL PRECONDITION = val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$63initial:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: this|callee = _t$88formal:org.junit.runners.ParentRunner*( sub ) ; _t$86|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$87|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$87rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$86rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$89); MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(return|callee); MEMna < Annotation[] ParentRunner.getRunnerAnnotations():395 > {vpath: }(_t$90); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$92); LOCKED(_t$87); RET < Annotation[] TestClass.getAnnotations() > (_t$90); RET < List ParentRunner.getFilteredChildren() > (_t$92); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$90); RET < TestClass ParentRunner.getTestClass() > (_t$86) ; return|callee = _t$91update:403:org.junit.runner.Description* ; _t$89|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$90|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$90update:395, fChildren:_t$89update:(z)395, fDisplayName:"null"update:395, fTestClass:nullupdate:395, fUniqueId:"null"update:395}formal(z):org.junit.runner.Description; _t$86|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$87|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$87formal, filteredChildren:_t$92update:(z)400, testClass:_t$86formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$92); RET < TestClass ParentRunner.getTestClass() > (_t$86) ; return|callee = EXN _t$92update:395:org.junit.runner.Description* ; _t$92|->{}alloc:java.lang.IllegalArgumentException; _t$86|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$87|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$87formal, filteredChildren:nullformal(z), testClass:_t$86formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268(val$7); RET < boolean List.isEmpty() > (0) pi2: returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$63initial:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$88formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{childrenLock:_t$87rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$86rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$87|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$86|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply n$8 _t$88 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$63initial:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$88 = n$8] |- n$8|->{childrenLock:_t$87rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$86rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$87|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$86|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply val$2 null do_imply val$3 _t$86 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$63initial:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$86 = val$3; _t$87 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$88 = n$8 val$2 = null MISSING FLD: n$8|->{childrenLock:_t$87rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$4 null Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$63initial:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$86 = val$3; _t$87 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$88 = n$8 val$4 = null; val$2 = null MISSING FLD: n$8|->{childrenLock:_t$87rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$63initial:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$86 = val$3; _t$87 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$88 = n$8 val$4 = null; val$2 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$87rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Result of Abduction SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$63initial:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$86 = val$3; _t$87 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$88 = n$8 val$4 = null; val$2 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$87rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:%path%n8_org.junit.runners.ParentRunner.childrenLock$-3rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE WARNING: Missing fields hpred has non-footprint vars: n$8|->{childrenLock:%path%n8_org.junit.runners.ParentRunner.childrenLock$-3rearrange:531}formal(z):org.junit.runners.ParentRunner( sub ) Implication error: missing_sigma not empty in re-execution EXECUTING SPEC 2/5 ACTUAL PRECONDITION = val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$63initial:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$94 != null ; this|callee = _t$95formal:org.junit.runners.ParentRunner*( sub ) ; _t$93|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$94|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:_t$94rearrange:(z)530, testClass:_t$93rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$94 != null; MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$96); MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(return|callee); MEMna < Annotation[] ParentRunner.getRunnerAnnotations():395 > {vpath: }(_t$97); RET < Annotation[] TestClass.getAnnotations() > (_t$97); RET < List ParentRunner.getFilteredChildren() > (_t$94); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$97); RET < TestClass ParentRunner.getTestClass() > (_t$93) ; return|callee = _t$98update:403:org.junit.runner.Description* ; _t$96|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$97|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$97update:395, fChildren:_t$96update:(z)395, fDisplayName:"null"update:395, fTestClass:nullupdate:395, fUniqueId:"null"update:395}formal(z):org.junit.runner.Description; _t$93|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$94|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$94formal(z), testClass:_t$93formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$94 != null; MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$98); RET < TestClass ParentRunner.getTestClass() > (_t$93) ; return|callee = EXN _t$98update:395:org.junit.runner.Description* ; _t$98|->{}alloc:java.lang.IllegalArgumentException; _t$93|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$94|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$94formal(z), testClass:_t$93formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268(val$7); RET < boolean List.isEmpty() > (0) pi2: _t$94 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$63initial:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$95formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{filteredChildren:_t$94rearrange:(z)530, testClass:_t$93rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$94|->{}rearrange:400:java.util.List( sub ); _t$93|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply n$8 _t$95 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$63initial:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$95 = n$8] |- n$8|->{filteredChildren:_t$94rearrange:(z)530, testClass:_t$93rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$94|->{}rearrange:400:java.util.List( sub ); _t$93|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply val$2 _t$94 do_imply val$3 _t$93 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$63initial:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$93 = val$3; _t$94 = val$2; _t$95 = n$8] |- val$2|->{}rearrange:400:java.util.List( sub ); val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$4 null Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$63initial:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$93 = val$3; _t$94 = val$2; _t$95 = n$8 val$4 = null] |- val$2|->{}rearrange:400:java.util.List( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$63initial:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ) [SUB: val$1 = n$8; _t$93 = val$3; _t$94 = val$2; _t$95 = n$8 val$4 = null] |- [FRAME TYPING: val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Result of Abduction SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$63initial:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$93 = val$3; _t$94 = val$2; _t$95 = n$8 val$4 = null] |- val$2 != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); val$2|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:val$2rearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE in vpath_find exp:_t$96 vpath_find: cannot find _t$96 in vpath_find exp:_t$98 vpath_find: cannot find _t$98 in vpath_find exp:_t$97 vpath_find: cannot find _t$97 in vpath_find exp:_t$98 vpath_find: cannot find _t$98 New footprint: val$4 = null Frame fld: Frame typ: val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) Missing fld: Instantiated frame: val$7|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); &classRules|->val$7update:268:java.util.List*; &$RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->val$7formal:java.util.List*( sub ); &$irvar0|->0nullify:void; &return|->n$63initial:org.junit.runners.model.Statement*; &$T0_31|->n$64initial:void; &$irvar1|->n$65initial:void; &statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &old_statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &$irvar2|->n$66initial:void; &this|->n$8formal:org.junit.runners.ParentRunner*( sub ); &old_this|->n$8formal:org.junit.runners.ParentRunner*( sub ) Instantiated post: PROP 1 of 2: val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$96); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(return|callee); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$97); RET < Annotation[] TestClass.getAnnotations() > (_t$97); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$97); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = _t$98update:270:org.junit.runner.Description* ; _t$96|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$97|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$97update:270, fChildren:_t$96update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$8|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$98); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = EXN _t$98update:270:org.junit.runner.Description* ; _t$98|->{}alloc:java.lang.IllegalArgumentException; val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$8|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** RESULTS FUNCTION CALL ******* PROP 1 of 2: val$1 = old_this; val$4 = null ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$2 != null; null != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$0); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$63initial:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$1|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$0|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$10|->{fAnnotations:_t$0update:270, fChildren:_t$1update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); null|->{name:val$5formal(z)}formal:java.lang.Class( sub ) PROP 2 of 2: val$1 = old_this; val$4 = null ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$2 != null; null != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); null|->{name:val$5formal(z)}formal:java.lang.Class( sub ) ***** END RESULTS FUNCTION CALL ******* pvar: classRules found error in dereference spec_pre: val$1 = old_this; val$4 = null ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$2 != null; null != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$96); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$97); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$97); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$63initial:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$97|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; _t$96|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$10|->{fAnnotations:_t$97update:270, fChildren:_t$96update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); null|->{name:val$5formal(z)}formal:java.lang.Class( sub ) exp val$7 desc: pvar: classRules found error in dereference spec_pre: val$1 = old_this; val$4 = null ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$2 != null; null != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$98); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$98update:270:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$98|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); null|->{name:val$5formal(z)}formal:java.lang.Class( sub ) exp val$7 desc: Prover.check_inconsistency_base: inconsistency reason [Some 0] Prover.check_inconsistency_base: inconsistency reason [Some 0] Prover.check_inconsistency_base: inconsistency reason [Some 0] EXECUTING SPEC 3/5 ACTUAL PRECONDITION = val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$63initial:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$99 != null ; this|callee = _t$101formal:org.junit.runners.ParentRunner*( sub ) ; _t$99|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$100|->{clazz:_t$99rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:_t$100rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) POST 1 of 1: _t$99 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$102); RET < Class TestClass.getJavaClass() > (_t$99); RET < TestClass ParentRunner.getTestClass() > (_t$100) ; return|callee = EXN _t$102update:397:org.junit.runner.Description* ; _t$102|->{}alloc:java.lang.IllegalArgumentException; _t$99|->{name:""formal(z)}formal(z):java.lang.Class( sub ); _t$100|->{clazz:_t$99formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:_t$100formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268(val$7); RET < boolean List.isEmpty() > (0) pi2: _t$99 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$63initial:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$101formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{testClass:_t$100rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$100|->{clazz:_t$99rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$99|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$63initial:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$101formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{testClass:_t$100rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$100|->{clazz:_t$99rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$99|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: ""|->{count:_t$120none, hash:_t$121none, offset:_t$122none, value:_t$123none}none:java.lang.String] [FRAME TYPING: "": java.lang.String ] do_imply n$8 _t$101 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$63initial:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$101 = n$8] |- n$8|->{testClass:_t$100rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$100|->{clazz:_t$99rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$99|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: ""|->{count:_t$120none, hash:_t$121none, offset:_t$122none, value:_t$123none}none:java.lang.String] [FRAME TYPING: "": java.lang.String ] do_imply val$3 _t$100 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$63initial:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$100 = val$3; _t$101 = n$8] |- val$3|->{clazz:_t$99rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$99|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: n$8|->{filteredChildren:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$120none, hash:_t$121none, offset:_t$122none, value:_t$123none}none:java.lang.String] [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] do_imply val$4 _t$99 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$63initial:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$99 = val$4; _t$100 = val$3; _t$101 = n$8] |- val$4|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: n$8|->{filteredChildren:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$120none, hash:_t$121none, offset:_t$122none, value:_t$123none}none:java.lang.String] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] do_imply val$5 "" Final Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$63initial:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$99 = val$4; _t$100 = val$3; _t$101 = n$8 val$5 = ""] |- [FRAME FLD: n$8|->{filteredChildren:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$120none, hash:_t$121none, offset:_t$122none, value:_t$123none}none:java.lang.String] [FRAME TYPING: val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] Result of Abduction SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$63initial:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$99 = val$4; _t$100 = val$3; _t$101 = n$8 val$5 = ""] |- val$4 != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$4|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); val$3|->{clazz:val$4rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:val$3rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME FLD: n$8|->{filteredChildren:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$120none, hash:_t$121none, offset:_t$122none, value:_t$123none}none:java.lang.String] [FRAME TYPING: val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] returning TRUE in vpath_find exp:_t$102 vpath_find: cannot find _t$102 New footprint: val$5 = "" Frame fld: n$8|->{filteredChildren:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$120none, hash:_t$121none, offset:_t$122none, value:_t$123none}none:java.lang.String Frame typ: val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String Missing fld: Instantiated frame: val$7|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$2|->{}formal:java.util.List( sub ); &classRules|->val$7update:268:java.util.List*; &$RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->val$7formal:java.util.List*( sub ); &$irvar0|->0nullify:void; &return|->n$63initial:org.junit.runners.model.Statement*; &$T0_31|->n$64initial:void; &$irvar1|->n$65initial:void; &statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &old_statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &$irvar2|->n$66initial:void; &this|->n$8formal:org.junit.runners.ParentRunner*( sub ); &old_this|->n$8formal:org.junit.runners.ParentRunner*( sub ) Instantiated post: PROP 1 of 1: val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$102); RET < Class TestClass.getJavaClass() > (val$4); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = EXN _t$102update:270:org.junit.runner.Description* ; _t$102|->{}alloc:java.lang.IllegalArgumentException; val$4|->{name:""formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); n$8|->{testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** RESULTS FUNCTION CALL ******* PROP 1 of 1: val$1 = old_this; val$5 = "" ; (-1 < val$8); val$8 != 1; val$4 != null; val$2 != null; null != ""; "" != ""; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Class TestClass.getJavaClass() > (val$4); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$4|->{name:""formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{}formal(z):java.lang.String( sub ) ***** END RESULTS FUNCTION CALL ******* pvar: classRules found error in dereference spec_pre: val$1 = old_this; val$5 = "" ; (-1 < val$8); val$8 != 1; val$4 != null; val$2 != null; null != ""; "" != ""; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$102); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Class TestClass.getJavaClass() > (val$4); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$102update:270:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$102|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$4|->{name:""formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{}formal(z):java.lang.String( sub ) exp val$7 desc: Prover.check_inconsistency_base: inconsistency reason [Some 2] Prover.check_inconsistency_base: inconsistency reason [Some 2] EXECUTING SPEC 4/5 ACTUAL PRECONDITION = val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$63initial:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$103 != null; _t$103 != ""; _t$104 != null ; this|callee = _t$107formal:org.junit.runners.ParentRunner*( sub ) ; _t$103|->{}rearrange:(z)394:java.lang.String( sub ); _t$104|->{name:_t$103rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$105|->{clazz:_t$104rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$106|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$106rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$105rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$103 != null; _t$103 != ""; _t$104 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$108); MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(return|callee); UND < Annotation[] Class.getAnnotations() > :216(_t$110); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$111); LOCKED(_t$106); RET < Annotation[] TestClass.getAnnotations() > (_t$110); RET < List ParentRunner.getFilteredChildren() > (_t$111); RET < Class TestClass.getJavaClass() > (_t$104); RET < String Class.getName() > (_t$103); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$110); RET < TestClass ParentRunner.getTestClass() > (_t$105) ; return|callee = _t$109update:403:org.junit.runner.Description* ; _t$108|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; return|callee|->{fAnnotations:_t$110update:397, fChildren:_t$108update:(z)397, fDisplayName:_t$103update:397, fTestClass:_t$104update:397, fUniqueId:_t$103update:397}formal(z):org.junit.runner.Description; _t$103|->{}formal:java.lang.String( sub ); _t$104|->{name:_t$103formal(z)}formal(z):java.lang.Class( sub ); _t$105|->{clazz:_t$104formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$106|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$106formal, filteredChildren:_t$111update:(z)400, testClass:_t$105formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$103 != null; _t$103 != ""; _t$104 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$111); RET < Class TestClass.getJavaClass() > (_t$104); RET < String Class.getName() > (_t$103); RET < TestClass ParentRunner.getTestClass() > (_t$105) ; return|callee = EXN _t$111update:397:org.junit.runner.Description* ; _t$111|->{}alloc:java.lang.IllegalArgumentException; _t$103|->{}formal:java.lang.String( sub ); _t$104|->{name:_t$103formal(z)}formal(z):java.lang.Class( sub ); _t$105|->{clazz:_t$104formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$106|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$106formal, filteredChildren:nullformal(z), testClass:_t$105formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268(val$7); RET < boolean List.isEmpty() > (0) pi2: _t$103 != null; _t$103 != ""; _t$104 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$63initial:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$107formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{childrenLock:_t$106rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$105rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$106|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$105|->{clazz:_t$104rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$104|->{name:_t$103rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$103|->{}rearrange:(z)394:java.lang.String( sub ) do_imply n$8 _t$107 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$63initial:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$107 = n$8] |- n$8|->{childrenLock:_t$106rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$105rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$106|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$105|->{clazz:_t$104rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$104|->{name:_t$103rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$103|->{}rearrange:(z)394:java.lang.String( sub ) do_imply val$2 null do_imply val$3 _t$105 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$63initial:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$105 = val$3; _t$106 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$107 = n$8 val$2 = null MISSING FLD: n$8|->{childrenLock:_t$106rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); val$3|->{clazz:_t$104rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$104|->{name:_t$103rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$103|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$4 _t$104 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$63initial:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$104 = val$4; _t$105 = val$3; _t$106 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$107 = n$8 val$2 = null MISSING FLD: n$8|->{childrenLock:_t$106rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); val$4|->{name:_t$103rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$103|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$63initial:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$104 = val$4; _t$105 = val$3; _t$106 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$107 = n$8 val$2 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$106rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- val$4|->{name:_t$103rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$103|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$5 _t$103 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$63initial:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$103 = val$5; _t$104 = val$4; _t$105 = val$3; _t$106 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$107 = n$8 val$2 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$106rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- val$5|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$63initial:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$103 = val$5; _t$104 = val$4; _t$105 = val$3; _t$106 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$107 = n$8 val$2 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$106rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- [FRAME TYPING: val$5: java.lang.String( sub ) val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Result of Abduction SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$63initial:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$103 = val$5; _t$104 = val$4; _t$105 = val$3; _t$106 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$107 = n$8 val$2 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$106rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- val$5 != null; val$5 != ""; val$4 != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$5|->{}rearrange:(z)394:java.lang.String( sub ); val$4|->{name:val$5rearrange:(z)15}rearrange:394:java.lang.Class( sub ); val$3|->{clazz:val$4rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:%path%n8_org.junit.runners.ParentRunner.childrenLock$-3rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: val$5: java.lang.String( sub ) val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE WARNING: Missing fields hpred has non-footprint vars: n$8|->{childrenLock:%path%n8_org.junit.runners.ParentRunner.childrenLock$-3rearrange:531}formal(z):org.junit.runners.ParentRunner( sub ) Implication error: missing_sigma not empty in re-execution EXECUTING SPEC 5/5 ACTUAL PRECONDITION = val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$63initial:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$112 != null; _t$112 != ""; _t$113 != null; _t$115 != null ; this|callee = _t$116formal:org.junit.runners.ParentRunner*( sub ) ; _t$112|->{}rearrange:(z)394:java.lang.String( sub ); _t$113|->{name:_t$112rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$114|->{clazz:_t$113rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$115|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:_t$115rearrange:(z)530, testClass:_t$114rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$112 != null; _t$112 != ""; _t$113 != null; _t$115 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$117); MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(return|callee); UND < Annotation[] Class.getAnnotations() > :216(_t$119); RET < Annotation[] TestClass.getAnnotations() > (_t$119); RET < List ParentRunner.getFilteredChildren() > (_t$115); RET < Class TestClass.getJavaClass() > (_t$113); RET < String Class.getName() > (_t$112); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$119); RET < TestClass ParentRunner.getTestClass() > (_t$114) ; return|callee = _t$118update:403:org.junit.runner.Description* ; _t$117|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; return|callee|->{fAnnotations:_t$119update:397, fChildren:_t$117update:(z)397, fDisplayName:_t$112update:397, fTestClass:_t$113update:397, fUniqueId:_t$112update:397}formal(z):org.junit.runner.Description; _t$112|->{}formal:java.lang.String( sub ); _t$113|->{name:_t$112formal(z)}formal(z):java.lang.Class( sub ); _t$114|->{clazz:_t$113formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$115|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$115formal(z), testClass:_t$114formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$112 != null; _t$112 != ""; _t$113 != null; _t$115 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$118); RET < Class TestClass.getJavaClass() > (_t$113); RET < String Class.getName() > (_t$112); RET < TestClass ParentRunner.getTestClass() > (_t$114) ; return|callee = EXN _t$118update:397:org.junit.runner.Description* ; _t$118|->{}alloc:java.lang.IllegalArgumentException; _t$112|->{}formal:java.lang.String( sub ); _t$113|->{name:_t$112formal(z)}formal(z):java.lang.Class( sub ); _t$114|->{clazz:_t$113formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$115|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$115formal(z), testClass:_t$114formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268(val$7); RET < boolean List.isEmpty() > (0) pi2: _t$112 != null; _t$112 != ""; _t$113 != null; _t$115 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$63initial:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$116formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{filteredChildren:_t$115rearrange:(z)530, testClass:_t$114rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$115|->{}rearrange:400:java.util.List( sub ); _t$114|->{clazz:_t$113rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$113|->{name:_t$112rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$112|->{}rearrange:(z)394:java.lang.String( sub ) do_imply n$8 _t$116 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$63initial:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$116 = n$8] |- n$8|->{filteredChildren:_t$115rearrange:(z)530, testClass:_t$114rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$115|->{}rearrange:400:java.util.List( sub ); _t$114|->{clazz:_t$113rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$113|->{name:_t$112rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$112|->{}rearrange:(z)394:java.lang.String( sub ) do_imply val$2 _t$115 do_imply val$3 _t$114 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$63initial:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$114 = val$3; _t$115 = val$2; _t$116 = n$8] |- val$2|->{}rearrange:400:java.util.List( sub ); val$3|->{clazz:_t$113rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$113|->{name:_t$112rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$112|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$4 _t$113 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$63initial:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$113 = val$4; _t$114 = val$3; _t$115 = val$2; _t$116 = n$8] |- val$2|->{}rearrange:400:java.util.List( sub ); val$4|->{name:_t$112rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$112|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$63initial:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ) [SUB: val$1 = n$8; _t$113 = val$4; _t$114 = val$3; _t$115 = val$2; _t$116 = n$8] |- val$4|->{name:_t$112rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$112|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$5 _t$112 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$63initial:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ) [SUB: val$1 = n$8; _t$112 = val$5; _t$113 = val$4; _t$114 = val$3; _t$115 = val$2; _t$116 = n$8] |- val$5|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$4: java.lang.Class( sub ) val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$63initial:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ) [SUB: val$1 = n$8; _t$112 = val$5; _t$113 = val$4; _t$114 = val$3; _t$115 = val$2; _t$116 = n$8] |- [FRAME TYPING: val$5: java.lang.String( sub ) val$4: java.lang.Class( sub ) val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Result of Abduction SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$63initial:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$112 = val$5; _t$113 = val$4; _t$114 = val$3; _t$115 = val$2; _t$116 = n$8] |- val$5 != null; val$5 != ""; val$4 != null; val$2 != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$5|->{}rearrange:(z)394:java.lang.String( sub ); val$4|->{name:val$5rearrange:(z)15}rearrange:394:java.lang.Class( sub ); val$3|->{clazz:val$4rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); val$2|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:val$2rearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: val$5: java.lang.String( sub ) val$4: java.lang.Class( sub ) val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE in vpath_find exp:_t$117 vpath_find: cannot find _t$117 in vpath_find exp:_t$118 vpath_find: cannot find _t$118 in vpath_find exp:_t$118 vpath_find: cannot find _t$118 New footprint: Frame fld: Frame typ: val$5: java.lang.String( sub ) val$4: java.lang.Class( sub ) val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) Missing fld: Instantiated frame: val$7|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); &classRules|->val$7update:268:java.util.List*; &$RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->val$7formal:java.util.List*( sub ); &$irvar0|->0nullify:void; &return|->n$63initial:org.junit.runners.model.Statement*; &$T0_31|->n$64initial:void; &$irvar1|->n$65initial:void; &statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &old_statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &$irvar2|->n$66initial:void; &this|->n$8formal:org.junit.runners.ParentRunner*( sub ); &old_this|->n$8formal:org.junit.runners.ParentRunner*( sub ) Instantiated post: PROP 1 of 2: val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$117); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(return|callee); UND < Annotation[] Class.getAnnotations() > :216(_t$119); RET < Annotation[] TestClass.getAnnotations() > (_t$119); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$119); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = _t$118update:270:org.junit.runner.Description* ; _t$117|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; return|callee|->{fAnnotations:_t$119update:270, fChildren:_t$117update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$8|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$118); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = EXN _t$118update:270:org.junit.runner.Description* ; _t$118|->{}alloc:java.lang.IllegalArgumentException; val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$8|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** RESULTS FUNCTION CALL ******* PROP 1 of 2: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$0); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$0); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$63initial:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$1|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$10|->{fAnnotations:_t$0update:270, fChildren:_t$1update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** END RESULTS FUNCTION CALL ******* pvar: classRules found error in dereference spec_pre: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$117); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$119); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$119); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$63initial:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$117|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$10|->{fAnnotations:_t$119update:270, fChildren:_t$117update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) exp val$7 desc: pvar: classRules found error in dereference spec_pre: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$118); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$118update:270:org.junit.runners.model.Statement*; $T0_31 = n$64initial:void; $irvar1 = n$65initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$66initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$118|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) exp val$7 desc: Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 2: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$5); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$4); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$4); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$5|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$10|->{fAnnotations:_t$4update:270, fChildren:_t$5update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (n$10); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction *&$irvar1:org.junit.runner.Description*=n$10 [line 270] in vpath_find exp:n$67 vpath_find: cannot find n$67 in vpath_find exp:n$10 vpath_find: cannot find n$10 .... Rearrangement Start .... Exp: &$irvar1 Prop: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$67); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(n$68); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (n$68); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$69initial:org.junit.runners.model.Statement*; $T0_31 = n$70initial:void; $irvar1 = n$71initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$72initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$67|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:n$68update:270, fChildren:n$67update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 1: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$1); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$4initial:org.junit.runners.model.Statement*; $T0_31 = _t$3initial:void; $irvar1 = n$10update:270:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$2|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); $irvar1|->{fAnnotations:_t$1update:270, fChildren:_t$2update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Skipping instr *&$irvar1:org.junit.runner.Description*=n$10 [line 270] due to exception Instruction NULLIFY(&this); [line 270] in vpath_find exp:_t$2 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$2 in vpath_find exp:n$10 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find n$10 Instruction Returns PROP 1 of 1: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$1); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$4initial:org.junit.runners.model.Statement*; $T0_31 = _t$3initial:void; $irvar1 = n$10update:270:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$2|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); $irvar1|->{fAnnotations:_t$1update:270, fChildren:_t$2update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction NULLIFY(&this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (n$10); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction EXIT_SCOPE(_,n$8,n$10,this); [line 270] in vpath_find exp:_t$2 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$2 in vpath_find exp:n$10 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find n$10 Instruction Returns PROP 1 of 1: (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$2); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$5initial:org.junit.runners.model.Statement*; $T0_31 = _t$4initial:void; $irvar1 = _t$1update:270:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$3|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $irvar1|->{fAnnotations:_t$2update:270, fChildren:_t$3update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction EXIT_SCOPE(_,n$8,n$10,this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (_t$4); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) .... After Symbolic Execution .... PROP 1 of 2: (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$2); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$5initial:org.junit.runners.model.Statement*; $T0_31 = _t$4initial:void; $irvar1 = _t$1update:270:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$3|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $irvar1|->{fAnnotations:_t$2update:270, fChildren:_t$3update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (_t$4); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub )
node10#session33(270) biabduction **** [RE:Pending] Statement ParentRunner.withClassRules(RunBefores) Node: 10, Procedure: Statement ParentRunner.withClassRules(RunBefores), Todo: 1 **** PROP 1 of 1: (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = val$1formal:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) .... Instructions: .... n$8=*&this:org.junit.runners.ParentRunner* [line 270]; _=*n$8:org.junit.runners.ParentRunner [line 270]; n$10=_fun_Description ParentRunner.getDescription()(n$8:org.junit.runners.ParentRunner*) virtual [line 270]; *&$irvar1:org.junit.runner.Description*=n$10 [line 270]; NULLIFY(&this); [line 270]; EXIT_SCOPE(_,n$8,n$10,this); [line 270]; Processing prop 1/1 Instruction n$8=*&this:org.junit.runners.ParentRunner* [line 270] .... Rearrangement Start .... Exp: &this Prop: (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$194initial:org.junit.runners.model.Statement*; $T0_31 = n$195initial:void; $irvar1 = n$196initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$197initial:void; this = val$1formal:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 1: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction _=*n$8:org.junit.runners.ParentRunner [line 270] .... Rearrangement Start .... Exp: n$8 Prop: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$198initial:org.junit.runners.model.Statement*; $T0_31 = n$199initial:void; $irvar1 = n$200initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$201initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 1: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction n$10=_fun_Description ParentRunner.getDescription()(n$8:org.junit.runners.ParentRunner*) virtual [line 270] Found 5 specs for function org.junit.runners.ParentRunner.getDescription():org.junit.runner.Description START EXECUTING SPECS FOR org.junit.runners.ParentRunner.getDescription():org.junit.runner.Description from state val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$202initial:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) EXECUTING SPEC 1/5 ACTUAL PRECONDITION = val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$202initial:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: this|callee = _t$338formal:org.junit.runners.ParentRunner*( sub ) ; _t$336|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$337|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$337rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$336rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$339); MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(return|callee); MEMna < Annotation[] ParentRunner.getRunnerAnnotations():395 > {vpath: }(_t$340); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$342); LOCKED(_t$337); RET < Annotation[] TestClass.getAnnotations() > (_t$340); RET < List ParentRunner.getFilteredChildren() > (_t$342); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$340); RET < TestClass ParentRunner.getTestClass() > (_t$336) ; return|callee = _t$341update:403:org.junit.runner.Description* ; _t$339|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$340|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$340update:395, fChildren:_t$339update:(z)395, fDisplayName:"null"update:395, fTestClass:nullupdate:395, fUniqueId:"null"update:395}formal(z):org.junit.runner.Description; _t$336|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$337|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$337formal, filteredChildren:_t$342update:(z)400, testClass:_t$336formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$342); RET < TestClass ParentRunner.getTestClass() > (_t$336) ; return|callee = EXN _t$342update:395:org.junit.runner.Description* ; _t$342|->{}alloc:java.lang.IllegalArgumentException; _t$336|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$337|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$337formal, filteredChildren:nullformal(z), testClass:_t$336formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268(val$7); RET < boolean List.isEmpty() > (0) pi2: returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$202initial:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$338formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{childrenLock:_t$337rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$336rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$337|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$336|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply n$8 _t$338 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$202initial:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$338 = n$8] |- n$8|->{childrenLock:_t$337rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$336rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$337|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$336|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply val$2 null do_imply val$3 _t$336 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$202initial:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$336 = val$3; _t$337 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$338 = n$8 val$2 = null MISSING FLD: n$8|->{childrenLock:_t$337rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$4 null Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$202initial:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$336 = val$3; _t$337 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$338 = n$8 val$4 = null; val$2 = null MISSING FLD: n$8|->{childrenLock:_t$337rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$202initial:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$336 = val$3; _t$337 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$338 = n$8 val$4 = null; val$2 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$337rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Result of Abduction SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$202initial:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$336 = val$3; _t$337 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$338 = n$8 val$4 = null; val$2 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$337rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:%path%n8_org.junit.runners.ParentRunner.childrenLock$-3rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE WARNING: Missing fields hpred has non-footprint vars: n$8|->{childrenLock:%path%n8_org.junit.runners.ParentRunner.childrenLock$-3rearrange:531}formal(z):org.junit.runners.ParentRunner( sub ) Implication error: missing_sigma not empty in re-execution EXECUTING SPEC 2/5 ACTUAL PRECONDITION = val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$202initial:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$344 != null ; this|callee = _t$345formal:org.junit.runners.ParentRunner*( sub ) ; _t$343|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$344|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:_t$344rearrange:(z)530, testClass:_t$343rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$344 != null; MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$346); MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(return|callee); MEMna < Annotation[] ParentRunner.getRunnerAnnotations():395 > {vpath: }(_t$347); RET < Annotation[] TestClass.getAnnotations() > (_t$347); RET < List ParentRunner.getFilteredChildren() > (_t$344); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$347); RET < TestClass ParentRunner.getTestClass() > (_t$343) ; return|callee = _t$348update:403:org.junit.runner.Description* ; _t$346|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$347|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$347update:395, fChildren:_t$346update:(z)395, fDisplayName:"null"update:395, fTestClass:nullupdate:395, fUniqueId:"null"update:395}formal(z):org.junit.runner.Description; _t$343|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$344|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$344formal(z), testClass:_t$343formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$344 != null; MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$348); RET < TestClass ParentRunner.getTestClass() > (_t$343) ; return|callee = EXN _t$348update:395:org.junit.runner.Description* ; _t$348|->{}alloc:java.lang.IllegalArgumentException; _t$343|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$344|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$344formal(z), testClass:_t$343formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268(val$7); RET < boolean List.isEmpty() > (0) pi2: _t$344 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$202initial:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$345formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{filteredChildren:_t$344rearrange:(z)530, testClass:_t$343rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$344|->{}rearrange:400:java.util.List( sub ); _t$343|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply n$8 _t$345 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$202initial:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$345 = n$8] |- n$8|->{filteredChildren:_t$344rearrange:(z)530, testClass:_t$343rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$344|->{}rearrange:400:java.util.List( sub ); _t$343|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply val$2 _t$344 do_imply val$3 _t$343 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$202initial:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$343 = val$3; _t$344 = val$2; _t$345 = n$8] |- val$2|->{}rearrange:400:java.util.List( sub ); val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$4 null Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$202initial:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$343 = val$3; _t$344 = val$2; _t$345 = n$8 val$4 = null] |- val$2|->{}rearrange:400:java.util.List( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$202initial:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ) [SUB: val$1 = n$8; _t$343 = val$3; _t$344 = val$2; _t$345 = n$8 val$4 = null] |- [FRAME TYPING: val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Result of Abduction SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$202initial:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$343 = val$3; _t$344 = val$2; _t$345 = n$8 val$4 = null] |- val$2 != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); val$2|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:val$2rearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE in vpath_find exp:_t$346 vpath_find: cannot find _t$346 in vpath_find exp:_t$348 vpath_find: cannot find _t$348 in vpath_find exp:_t$347 vpath_find: cannot find _t$347 in vpath_find exp:_t$348 vpath_find: cannot find _t$348 New footprint: val$4 = null Frame fld: Frame typ: val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) Missing fld: Instantiated frame: val$7|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); &classRules|->val$7update:268:java.util.List*; &$RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->val$7formal:java.util.List*( sub ); &$irvar0|->0nullify:void; &return|->n$202initial:org.junit.runners.model.Statement*; &$T0_31|->n$203initial:void; &$irvar1|->n$204initial:void; &statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &old_statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &$irvar2|->n$205initial:void; &this|->n$8formal:org.junit.runners.ParentRunner*( sub ); &old_this|->n$8formal:org.junit.runners.ParentRunner*( sub ) Instantiated post: PROP 1 of 2: val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$346); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(return|callee); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$347); RET < Annotation[] TestClass.getAnnotations() > (_t$347); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$347); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = _t$348update:270:org.junit.runner.Description* ; _t$346|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$347|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$347update:270, fChildren:_t$346update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$8|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$348); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = EXN _t$348update:270:org.junit.runner.Description* ; _t$348|->{}alloc:java.lang.IllegalArgumentException; val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$8|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** RESULTS FUNCTION CALL ******* PROP 1 of 2: val$1 = old_this; val$4 = null ; (val$8 <= -1); val$5 != null; val$5 != ""; val$2 != null; null != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$0); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$202initial:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$1|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$0|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$10|->{fAnnotations:_t$0update:270, fChildren:_t$1update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); null|->{name:val$5formal(z)}formal:java.lang.Class( sub ) PROP 2 of 2: val$1 = old_this; val$4 = null ; (val$8 <= -1); val$5 != null; val$5 != ""; val$2 != null; null != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); null|->{name:val$5formal(z)}formal:java.lang.Class( sub ) ***** END RESULTS FUNCTION CALL ******* pvar: classRules found error in dereference spec_pre: val$1 = old_this; val$4 = null ; (val$8 <= -1); val$5 != null; val$5 != ""; val$2 != null; null != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$346); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$347); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$347); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$202initial:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$347|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; _t$346|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$10|->{fAnnotations:_t$347update:270, fChildren:_t$346update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); null|->{name:val$5formal(z)}formal:java.lang.Class( sub ) exp val$7 desc: pvar: classRules found error in dereference spec_pre: val$1 = old_this; val$4 = null ; (val$8 <= -1); val$5 != null; val$5 != ""; val$2 != null; null != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$348); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$348update:270:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$348|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); null|->{name:val$5formal(z)}formal:java.lang.Class( sub ) exp val$7 desc: Prover.check_inconsistency_base: inconsistency reason [Some 0] Prover.check_inconsistency_base: inconsistency reason [Some 0] Prover.check_inconsistency_base: inconsistency reason [Some 0] EXECUTING SPEC 3/5 ACTUAL PRECONDITION = val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$202initial:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$349 != null ; this|callee = _t$351formal:org.junit.runners.ParentRunner*( sub ) ; _t$349|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$350|->{clazz:_t$349rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:_t$350rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) POST 1 of 1: _t$349 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$352); RET < Class TestClass.getJavaClass() > (_t$349); RET < TestClass ParentRunner.getTestClass() > (_t$350) ; return|callee = EXN _t$352update:397:org.junit.runner.Description* ; _t$352|->{}alloc:java.lang.IllegalArgumentException; _t$349|->{name:""formal(z)}formal(z):java.lang.Class( sub ); _t$350|->{clazz:_t$349formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:_t$350formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268(val$7); RET < boolean List.isEmpty() > (0) pi2: _t$349 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$202initial:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$351formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{testClass:_t$350rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$350|->{clazz:_t$349rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$349|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$202initial:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$351formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{testClass:_t$350rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$350|->{clazz:_t$349rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$349|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: ""|->{count:_t$370none, hash:_t$371none, offset:_t$372none, value:_t$373none}none:java.lang.String] [FRAME TYPING: "": java.lang.String ] do_imply n$8 _t$351 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$202initial:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$351 = n$8] |- n$8|->{testClass:_t$350rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$350|->{clazz:_t$349rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$349|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: ""|->{count:_t$370none, hash:_t$371none, offset:_t$372none, value:_t$373none}none:java.lang.String] [FRAME TYPING: "": java.lang.String ] do_imply val$3 _t$350 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$202initial:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$350 = val$3; _t$351 = n$8] |- val$3|->{clazz:_t$349rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$349|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: n$8|->{filteredChildren:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$370none, hash:_t$371none, offset:_t$372none, value:_t$373none}none:java.lang.String] [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] do_imply val$4 _t$349 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$202initial:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$349 = val$4; _t$350 = val$3; _t$351 = n$8] |- val$4|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: n$8|->{filteredChildren:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$370none, hash:_t$371none, offset:_t$372none, value:_t$373none}none:java.lang.String] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] do_imply val$5 "" Final Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$202initial:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$349 = val$4; _t$350 = val$3; _t$351 = n$8 val$5 = ""] |- [FRAME FLD: n$8|->{filteredChildren:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$370none, hash:_t$371none, offset:_t$372none, value:_t$373none}none:java.lang.String] [FRAME TYPING: val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] Result of Abduction SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$202initial:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$349 = val$4; _t$350 = val$3; _t$351 = n$8 val$5 = ""] |- val$4 != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$4|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); val$3|->{clazz:val$4rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:val$3rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME FLD: n$8|->{filteredChildren:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$370none, hash:_t$371none, offset:_t$372none, value:_t$373none}none:java.lang.String] [FRAME TYPING: val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] returning TRUE in vpath_find exp:_t$352 vpath_find: cannot find _t$352 New footprint: val$5 = "" Frame fld: n$8|->{filteredChildren:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$370none, hash:_t$371none, offset:_t$372none, value:_t$373none}none:java.lang.String Frame typ: val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String Missing fld: Instantiated frame: val$7|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$2|->{}formal:java.util.List( sub ); &classRules|->val$7update:268:java.util.List*; &$RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->val$7formal:java.util.List*( sub ); &$irvar0|->0nullify:void; &return|->n$202initial:org.junit.runners.model.Statement*; &$T0_31|->n$203initial:void; &$irvar1|->n$204initial:void; &statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &old_statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &$irvar2|->n$205initial:void; &this|->n$8formal:org.junit.runners.ParentRunner*( sub ); &old_this|->n$8formal:org.junit.runners.ParentRunner*( sub ) Instantiated post: PROP 1 of 1: val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$352); RET < Class TestClass.getJavaClass() > (val$4); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = EXN _t$352update:270:org.junit.runner.Description* ; _t$352|->{}alloc:java.lang.IllegalArgumentException; val$4|->{name:""formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); n$8|->{testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** RESULTS FUNCTION CALL ******* PROP 1 of 1: val$1 = old_this; val$5 = "" ; (val$8 <= -1); val$4 != null; val$2 != null; null != ""; "" != ""; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Class TestClass.getJavaClass() > (val$4); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$4|->{name:""formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{}formal(z):java.lang.String( sub ) ***** END RESULTS FUNCTION CALL ******* pvar: classRules found error in dereference spec_pre: val$1 = old_this; val$5 = "" ; (val$8 <= -1); val$4 != null; val$2 != null; null != ""; "" != ""; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$352); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Class TestClass.getJavaClass() > (val$4); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$352update:270:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$352|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$4|->{name:""formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{}formal(z):java.lang.String( sub ) exp val$7 desc: Prover.check_inconsistency_base: inconsistency reason [Some 2] Prover.check_inconsistency_base: inconsistency reason [Some 2] EXECUTING SPEC 4/5 ACTUAL PRECONDITION = val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$202initial:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$353 != null; _t$353 != ""; _t$354 != null ; this|callee = _t$357formal:org.junit.runners.ParentRunner*( sub ) ; _t$353|->{}rearrange:(z)394:java.lang.String( sub ); _t$354|->{name:_t$353rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$355|->{clazz:_t$354rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$356|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$356rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$355rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$353 != null; _t$353 != ""; _t$354 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$358); MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(return|callee); UND < Annotation[] Class.getAnnotations() > :216(_t$360); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$361); LOCKED(_t$356); RET < Annotation[] TestClass.getAnnotations() > (_t$360); RET < List ParentRunner.getFilteredChildren() > (_t$361); RET < Class TestClass.getJavaClass() > (_t$354); RET < String Class.getName() > (_t$353); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$360); RET < TestClass ParentRunner.getTestClass() > (_t$355) ; return|callee = _t$359update:403:org.junit.runner.Description* ; _t$358|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; return|callee|->{fAnnotations:_t$360update:397, fChildren:_t$358update:(z)397, fDisplayName:_t$353update:397, fTestClass:_t$354update:397, fUniqueId:_t$353update:397}formal(z):org.junit.runner.Description; _t$353|->{}formal:java.lang.String( sub ); _t$354|->{name:_t$353formal(z)}formal(z):java.lang.Class( sub ); _t$355|->{clazz:_t$354formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$356|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$356formal, filteredChildren:_t$361update:(z)400, testClass:_t$355formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$353 != null; _t$353 != ""; _t$354 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$361); RET < Class TestClass.getJavaClass() > (_t$354); RET < String Class.getName() > (_t$353); RET < TestClass ParentRunner.getTestClass() > (_t$355) ; return|callee = EXN _t$361update:397:org.junit.runner.Description* ; _t$361|->{}alloc:java.lang.IllegalArgumentException; _t$353|->{}formal:java.lang.String( sub ); _t$354|->{name:_t$353formal(z)}formal(z):java.lang.Class( sub ); _t$355|->{clazz:_t$354formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$356|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$356formal, filteredChildren:nullformal(z), testClass:_t$355formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268(val$7); RET < boolean List.isEmpty() > (0) pi2: _t$353 != null; _t$353 != ""; _t$354 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$202initial:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$357formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{childrenLock:_t$356rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$355rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$356|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$355|->{clazz:_t$354rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$354|->{name:_t$353rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$353|->{}rearrange:(z)394:java.lang.String( sub ) do_imply n$8 _t$357 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$202initial:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$357 = n$8] |- n$8|->{childrenLock:_t$356rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$355rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$356|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$355|->{clazz:_t$354rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$354|->{name:_t$353rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$353|->{}rearrange:(z)394:java.lang.String( sub ) do_imply val$2 null do_imply val$3 _t$355 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$202initial:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$355 = val$3; _t$356 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$357 = n$8 val$2 = null MISSING FLD: n$8|->{childrenLock:_t$356rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); val$3|->{clazz:_t$354rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$354|->{name:_t$353rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$353|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$4 _t$354 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$202initial:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$354 = val$4; _t$355 = val$3; _t$356 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$357 = n$8 val$2 = null MISSING FLD: n$8|->{childrenLock:_t$356rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); val$4|->{name:_t$353rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$353|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$202initial:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$354 = val$4; _t$355 = val$3; _t$356 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$357 = n$8 val$2 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$356rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- val$4|->{name:_t$353rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$353|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$5 _t$353 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$202initial:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$353 = val$5; _t$354 = val$4; _t$355 = val$3; _t$356 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$357 = n$8 val$2 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$356rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- val$5|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$202initial:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$353 = val$5; _t$354 = val$4; _t$355 = val$3; _t$356 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$357 = n$8 val$2 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$356rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- [FRAME TYPING: val$5: java.lang.String( sub ) val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Result of Abduction SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$202initial:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$353 = val$5; _t$354 = val$4; _t$355 = val$3; _t$356 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$357 = n$8 val$2 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$356rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- val$5 != null; val$5 != ""; val$4 != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$5|->{}rearrange:(z)394:java.lang.String( sub ); val$4|->{name:val$5rearrange:(z)15}rearrange:394:java.lang.Class( sub ); val$3|->{clazz:val$4rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:%path%n8_org.junit.runners.ParentRunner.childrenLock$-3rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: val$5: java.lang.String( sub ) val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE WARNING: Missing fields hpred has non-footprint vars: n$8|->{childrenLock:%path%n8_org.junit.runners.ParentRunner.childrenLock$-3rearrange:531}formal(z):org.junit.runners.ParentRunner( sub ) Implication error: missing_sigma not empty in re-execution EXECUTING SPEC 5/5 ACTUAL PRECONDITION = val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$202initial:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$362 != null; _t$362 != ""; _t$363 != null; _t$365 != null ; this|callee = _t$366formal:org.junit.runners.ParentRunner*( sub ) ; _t$362|->{}rearrange:(z)394:java.lang.String( sub ); _t$363|->{name:_t$362rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$364|->{clazz:_t$363rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$365|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:_t$365rearrange:(z)530, testClass:_t$364rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$362 != null; _t$362 != ""; _t$363 != null; _t$365 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$367); MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(return|callee); UND < Annotation[] Class.getAnnotations() > :216(_t$369); RET < Annotation[] TestClass.getAnnotations() > (_t$369); RET < List ParentRunner.getFilteredChildren() > (_t$365); RET < Class TestClass.getJavaClass() > (_t$363); RET < String Class.getName() > (_t$362); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$369); RET < TestClass ParentRunner.getTestClass() > (_t$364) ; return|callee = _t$368update:403:org.junit.runner.Description* ; _t$367|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; return|callee|->{fAnnotations:_t$369update:397, fChildren:_t$367update:(z)397, fDisplayName:_t$362update:397, fTestClass:_t$363update:397, fUniqueId:_t$362update:397}formal(z):org.junit.runner.Description; _t$362|->{}formal:java.lang.String( sub ); _t$363|->{name:_t$362formal(z)}formal(z):java.lang.Class( sub ); _t$364|->{clazz:_t$363formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$365|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$365formal(z), testClass:_t$364formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$362 != null; _t$362 != ""; _t$363 != null; _t$365 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$368); RET < Class TestClass.getJavaClass() > (_t$363); RET < String Class.getName() > (_t$362); RET < TestClass ParentRunner.getTestClass() > (_t$364) ; return|callee = EXN _t$368update:397:org.junit.runner.Description* ; _t$368|->{}alloc:java.lang.IllegalArgumentException; _t$362|->{}formal:java.lang.String( sub ); _t$363|->{name:_t$362formal(z)}formal(z):java.lang.Class( sub ); _t$364|->{clazz:_t$363formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$365|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$365formal(z), testClass:_t$364formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268(val$7); RET < boolean List.isEmpty() > (0) pi2: _t$362 != null; _t$362 != ""; _t$363 != null; _t$365 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$202initial:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$366formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{filteredChildren:_t$365rearrange:(z)530, testClass:_t$364rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$365|->{}rearrange:400:java.util.List( sub ); _t$364|->{clazz:_t$363rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$363|->{name:_t$362rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$362|->{}rearrange:(z)394:java.lang.String( sub ) do_imply n$8 _t$366 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$202initial:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$366 = n$8] |- n$8|->{filteredChildren:_t$365rearrange:(z)530, testClass:_t$364rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$365|->{}rearrange:400:java.util.List( sub ); _t$364|->{clazz:_t$363rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$363|->{name:_t$362rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$362|->{}rearrange:(z)394:java.lang.String( sub ) do_imply val$2 _t$365 do_imply val$3 _t$364 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$202initial:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$364 = val$3; _t$365 = val$2; _t$366 = n$8] |- val$2|->{}rearrange:400:java.util.List( sub ); val$3|->{clazz:_t$363rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$363|->{name:_t$362rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$362|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$4 _t$363 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$202initial:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$363 = val$4; _t$364 = val$3; _t$365 = val$2; _t$366 = n$8] |- val$2|->{}rearrange:400:java.util.List( sub ); val$4|->{name:_t$362rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$362|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$202initial:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ) [SUB: val$1 = n$8; _t$363 = val$4; _t$364 = val$3; _t$365 = val$2; _t$366 = n$8] |- val$4|->{name:_t$362rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$362|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$5 _t$362 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$202initial:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ) [SUB: val$1 = n$8; _t$362 = val$5; _t$363 = val$4; _t$364 = val$3; _t$365 = val$2; _t$366 = n$8] |- val$5|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$4: java.lang.Class( sub ) val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$202initial:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [SUB: val$1 = n$8; _t$362 = val$5; _t$363 = val$4; _t$364 = val$3; _t$365 = val$2; _t$366 = n$8] |- [FRAME TYPING: val$5: java.lang.String( sub ) val$4: java.lang.Class( sub ) val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Result of Abduction SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$202initial:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$362 = val$5; _t$363 = val$4; _t$364 = val$3; _t$365 = val$2; _t$366 = n$8] |- val$5 != null; val$5 != ""; val$4 != null; val$2 != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$5|->{}rearrange:(z)394:java.lang.String( sub ); val$4|->{name:val$5rearrange:(z)15}rearrange:394:java.lang.Class( sub ); val$3|->{clazz:val$4rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); val$2|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:val$2rearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: val$5: java.lang.String( sub ) val$4: java.lang.Class( sub ) val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE in vpath_find exp:_t$367 vpath_find: cannot find _t$367 in vpath_find exp:_t$368 vpath_find: cannot find _t$368 in vpath_find exp:_t$368 vpath_find: cannot find _t$368 New footprint: Frame fld: Frame typ: val$5: java.lang.String( sub ) val$4: java.lang.Class( sub ) val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) Missing fld: Instantiated frame: val$7|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); &classRules|->val$7update:268:java.util.List*; &$RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->val$7formal:java.util.List*( sub ); &$irvar0|->0nullify:void; &return|->n$202initial:org.junit.runners.model.Statement*; &$T0_31|->n$203initial:void; &$irvar1|->n$204initial:void; &statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &old_statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &$irvar2|->n$205initial:void; &this|->n$8formal:org.junit.runners.ParentRunner*( sub ); &old_this|->n$8formal:org.junit.runners.ParentRunner*( sub ) Instantiated post: PROP 1 of 2: val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$367); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(return|callee); UND < Annotation[] Class.getAnnotations() > :216(_t$369); RET < Annotation[] TestClass.getAnnotations() > (_t$369); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$369); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = _t$368update:270:org.junit.runner.Description* ; _t$367|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; return|callee|->{fAnnotations:_t$369update:270, fChildren:_t$367update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$8|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$368); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = EXN _t$368update:270:org.junit.runner.Description* ; _t$368|->{}alloc:java.lang.IllegalArgumentException; val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$8|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** RESULTS FUNCTION CALL ******* PROP 1 of 2: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$0); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$0); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$202initial:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$1|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$10|->{fAnnotations:_t$0update:270, fChildren:_t$1update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** END RESULTS FUNCTION CALL ******* pvar: classRules found error in dereference spec_pre: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$367); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$369); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$369); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$202initial:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$367|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$10|->{fAnnotations:_t$369update:270, fChildren:_t$367update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) exp val$7 desc: pvar: classRules found error in dereference spec_pre: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$368); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$368update:270:org.junit.runners.model.Statement*; $T0_31 = n$203initial:void; $irvar1 = n$204initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$205initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$368|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) exp val$7 desc: Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 2: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$5); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$4); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$4); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$5|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$10|->{fAnnotations:_t$4update:270, fChildren:_t$5update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (n$10); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction *&$irvar1:org.junit.runner.Description*=n$10 [line 270] in vpath_find exp:n$206 vpath_find: cannot find n$206 in vpath_find exp:n$10 vpath_find: cannot find n$10 .... Rearrangement Start .... Exp: &$irvar1 Prop: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$206); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(n$207); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (n$207); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$208initial:org.junit.runners.model.Statement*; $T0_31 = n$209initial:void; $irvar1 = n$210initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$211initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$206|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:n$207update:270, fChildren:n$206update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 1: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$1); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$4initial:org.junit.runners.model.Statement*; $T0_31 = _t$3initial:void; $irvar1 = n$10update:270:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$2|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); $irvar1|->{fAnnotations:_t$1update:270, fChildren:_t$2update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Skipping instr *&$irvar1:org.junit.runner.Description*=n$10 [line 270] due to exception Instruction NULLIFY(&this); [line 270] in vpath_find exp:_t$2 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$2 in vpath_find exp:n$10 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find n$10 Instruction Returns PROP 1 of 1: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$1); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$4initial:org.junit.runners.model.Statement*; $T0_31 = _t$3initial:void; $irvar1 = n$10update:270:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$2|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); $irvar1|->{fAnnotations:_t$1update:270, fChildren:_t$2update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction NULLIFY(&this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (n$10); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction EXIT_SCOPE(_,n$8,n$10,this); [line 270] in vpath_find exp:_t$2 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$2 in vpath_find exp:n$10 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find n$10 Instruction Returns PROP 1 of 1: (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$2); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$5initial:org.junit.runners.model.Statement*; $T0_31 = _t$4initial:void; $irvar1 = _t$1update:270:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$3|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $irvar1|->{fAnnotations:_t$2update:270, fChildren:_t$3update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction EXIT_SCOPE(_,n$8,n$10,this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (_t$4); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) .... After Symbolic Execution .... PROP 1 of 2: (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$2); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$5initial:org.junit.runners.model.Statement*; $T0_31 = _t$4initial:void; $irvar1 = _t$1update:270:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$3|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $irvar1|->{fAnnotations:_t$2update:270, fChildren:_t$3update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (_t$4); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub )
node10#session48(270) biabduction **** [RE:Pending] Statement ParentRunner.withClassRules(RunBefores) Node: 10, Procedure: Statement ParentRunner.withClassRules(RunBefores), Todo: 1 **** PROP 1 of 1: (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = val$1formal:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) .... Instructions: .... n$8=*&this:org.junit.runners.ParentRunner* [line 270]; _=*n$8:org.junit.runners.ParentRunner [line 270]; n$10=_fun_Description ParentRunner.getDescription()(n$8:org.junit.runners.ParentRunner*) virtual [line 270]; *&$irvar1:org.junit.runner.Description*=n$10 [line 270]; NULLIFY(&this); [line 270]; EXIT_SCOPE(_,n$8,n$10,this); [line 270]; Processing prop 1/1 Instruction n$8=*&this:org.junit.runners.ParentRunner* [line 270] .... Rearrangement Start .... Exp: &this Prop: (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$342initial:org.junit.runners.model.Statement*; $T0_31 = n$343initial:void; $irvar1 = n$344initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$345initial:void; this = val$1formal:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 1: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction _=*n$8:org.junit.runners.ParentRunner [line 270] .... Rearrangement Start .... Exp: n$8 Prop: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$346initial:org.junit.runners.model.Statement*; $T0_31 = n$347initial:void; $irvar1 = n$348initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$349initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 1: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction n$10=_fun_Description ParentRunner.getDescription()(n$8:org.junit.runners.ParentRunner*) virtual [line 270] Found 5 specs for function org.junit.runners.ParentRunner.getDescription():org.junit.runner.Description START EXECUTING SPECS FOR org.junit.runners.ParentRunner.getDescription():org.junit.runner.Description from state val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$350initial:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) EXECUTING SPEC 1/5 ACTUAL PRECONDITION = val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$350initial:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: this|callee = _t$606formal:org.junit.runners.ParentRunner*( sub ) ; _t$604|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$605|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$605rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$604rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$607); MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(return|callee); MEMna < Annotation[] ParentRunner.getRunnerAnnotations():395 > {vpath: }(_t$608); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$610); LOCKED(_t$605); RET < Annotation[] TestClass.getAnnotations() > (_t$608); RET < List ParentRunner.getFilteredChildren() > (_t$610); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$608); RET < TestClass ParentRunner.getTestClass() > (_t$604) ; return|callee = _t$609update:403:org.junit.runner.Description* ; _t$607|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$608|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$608update:395, fChildren:_t$607update:(z)395, fDisplayName:"null"update:395, fTestClass:nullupdate:395, fUniqueId:"null"update:395}formal(z):org.junit.runner.Description; _t$604|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$605|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$605formal, filteredChildren:_t$610update:(z)400, testClass:_t$604formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$610); RET < TestClass ParentRunner.getTestClass() > (_t$604) ; return|callee = EXN _t$610update:395:org.junit.runner.Description* ; _t$610|->{}alloc:java.lang.IllegalArgumentException; _t$604|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$605|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$605formal, filteredChildren:nullformal(z), testClass:_t$604formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268(val$7); RET < boolean List.isEmpty() > (0) pi2: returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$350initial:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$606formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{childrenLock:_t$605rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$604rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$605|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$604|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply n$8 _t$606 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$350initial:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$606 = n$8] |- n$8|->{childrenLock:_t$605rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$604rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$605|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$604|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply val$2 _t$605 do_imply null null do_imply val$3 _t$604 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$350initial:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$604 = val$3; _t$605 = val$2; _t$606 = n$8] |- val$2|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$4 null Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$350initial:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$604 = val$3; _t$605 = val$2; _t$606 = n$8 val$4 = null] |- val$2|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$350initial:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ) [SUB: val$1 = n$8; _t$604 = val$3; _t$605 = val$2; _t$606 = n$8 val$4 = null] |- [FRAME TYPING: val$2: java.util.concurrent.locks.Lock( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Result of Abduction SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$350initial:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$604 = val$3; _t$605 = val$2; _t$606 = n$8 val$4 = null] |- this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); val$2|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:val$2rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: val$2: java.util.concurrent.locks.Lock( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE in vpath_find exp:_t$607 vpath_find: cannot find _t$607 in vpath_find exp:_t$609 vpath_find: cannot find _t$609 in vpath_find exp:_t$608 vpath_find: cannot find _t$608 in vpath_find exp:_t$610 vpath_find: cannot find _t$610 New footprint: val$4 = null Frame fld: Frame typ: val$2: java.util.concurrent.locks.Lock( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) Missing fld: Instantiated frame: val$7|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); &classRules|->val$7update:268:java.util.List*; &$RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->val$7formal:java.util.List*( sub ); &$irvar0|->0nullify:void; &return|->n$350initial:org.junit.runners.model.Statement*; &$T0_31|->n$351initial:void; &$irvar1|->n$352initial:void; &statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &old_statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &$irvar2|->n$353initial:void; &this|->n$8formal:org.junit.runners.ParentRunner*( sub ); &old_this|->n$8formal:org.junit.runners.ParentRunner*( sub ) Instantiated post: PROP 1 of 2: MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$607); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(return|callee); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$608); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$610); LOCKED(val$2); RET < Annotation[] TestClass.getAnnotations() > (_t$608); RET < List ParentRunner.getFilteredChildren() > (_t$610); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$608); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = _t$609update:270:org.junit.runner.Description* ; _t$607|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$608|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$608update:270, fChildren:_t$607update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$8|->{childrenLock:val$2formal, filteredChildren:_t$610update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$610); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = EXN _t$610update:270:org.junit.runner.Description* ; _t$610|->{}alloc:java.lang.IllegalArgumentException; val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$8|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** RESULTS FUNCTION CALL ******* PROP 1 of 2: val$1 = old_this; val$4 = null ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; null != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(val$2); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$350initial:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$2|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$1|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$10|->{fAnnotations:_t$1update:270, fChildren:_t$2update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; old_this|->{childrenLock:val$2formal, filteredChildren:_t$0update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); null|->{name:val$5formal(z)}formal:java.lang.Class( sub ) PROP 2 of 2: val$1 = old_this; val$4 = null ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; null != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); null|->{name:val$5formal(z)}formal:java.lang.Class( sub ) ***** END RESULTS FUNCTION CALL ******* pvar: classRules found error in dereference spec_pre: val$1 = old_this; val$4 = null ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; null != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$607); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$608); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$610); LOCKED(val$2); RET < List ParentRunner.getFilteredChildren() > (_t$610); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$608); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$350initial:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$608|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; _t$607|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$10|->{fAnnotations:_t$608update:270, fChildren:_t$607update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; old_this|->{childrenLock:val$2formal, filteredChildren:_t$610update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); null|->{name:val$5formal(z)}formal:java.lang.Class( sub ) exp val$7 desc: pvar: classRules found error in dereference spec_pre: val$1 = old_this; val$4 = null ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; null != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$610); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$610update:270:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$610|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); null|->{name:val$5formal(z)}formal:java.lang.Class( sub ) exp val$7 desc: Prover.check_inconsistency_base: inconsistency reason [Some 0] Prover.check_inconsistency_base: inconsistency reason [Some 0] Prover.check_inconsistency_base: inconsistency reason [Some 0] EXECUTING SPEC 2/5 ACTUAL PRECONDITION = val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$350initial:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$612 != null ; this|callee = _t$613formal:org.junit.runners.ParentRunner*( sub ) ; _t$611|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$612|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:_t$612rearrange:(z)530, testClass:_t$611rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$612 != null; MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$614); MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(return|callee); MEMna < Annotation[] ParentRunner.getRunnerAnnotations():395 > {vpath: }(_t$615); RET < Annotation[] TestClass.getAnnotations() > (_t$615); RET < List ParentRunner.getFilteredChildren() > (_t$612); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$615); RET < TestClass ParentRunner.getTestClass() > (_t$611) ; return|callee = _t$616update:403:org.junit.runner.Description* ; _t$614|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$615|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$615update:395, fChildren:_t$614update:(z)395, fDisplayName:"null"update:395, fTestClass:nullupdate:395, fUniqueId:"null"update:395}formal(z):org.junit.runner.Description; _t$611|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$612|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$612formal(z), testClass:_t$611formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$612 != null; MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$616); RET < TestClass ParentRunner.getTestClass() > (_t$611) ; return|callee = EXN _t$616update:395:org.junit.runner.Description* ; _t$616|->{}alloc:java.lang.IllegalArgumentException; _t$611|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$612|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$612formal(z), testClass:_t$611formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268(val$7); RET < boolean List.isEmpty() > (0) pi2: _t$612 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$350initial:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$613formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{filteredChildren:_t$612rearrange:(z)530, testClass:_t$611rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$612|->{}rearrange:400:java.util.List( sub ); _t$611|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply n$8 _t$613 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$350initial:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$613 = n$8] |- n$8|->{filteredChildren:_t$612rearrange:(z)530, testClass:_t$611rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$612|->{}rearrange:400:java.util.List( sub ); _t$611|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply null _t$612 do_imply val$3 _t$611 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$350initial:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$611 = val$3; _t$612 = null; _t$613 = n$8] |- null|->{}rearrange:400:java.util.List( sub ); val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$4 null Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$350initial:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$611 = val$3; _t$612 = null; _t$613 = n$8 val$4 = null] |- null|->{}rearrange:400:java.util.List( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$350initial:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$611 = val$3; _t$612 = null; _t$613 = n$8 val$4 = null* null|->{}rearrange:400:java.util.List( sub )] |- [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Result of Abduction SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$350initial:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$611 = val$3; _t$612 = null; _t$613 = n$8 val$4 = null* null|->{}rearrange:400:java.util.List( sub )] |- null != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); null|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:nullrearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE Implication error: missing_sigma not empty in re-execution EXECUTING SPEC 3/5 ACTUAL PRECONDITION = val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$350initial:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$617 != null ; this|callee = _t$619formal:org.junit.runners.ParentRunner*( sub ) ; _t$617|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$618|->{clazz:_t$617rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:_t$618rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) POST 1 of 1: _t$617 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$620); RET < Class TestClass.getJavaClass() > (_t$617); RET < TestClass ParentRunner.getTestClass() > (_t$618) ; return|callee = EXN _t$620update:397:org.junit.runner.Description* ; _t$620|->{}alloc:java.lang.IllegalArgumentException; _t$617|->{name:""formal(z)}formal(z):java.lang.Class( sub ); _t$618|->{clazz:_t$617formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:_t$618formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268(val$7); RET < boolean List.isEmpty() > (0) pi2: _t$617 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$350initial:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$619formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{testClass:_t$618rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$618|->{clazz:_t$617rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$617|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$350initial:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$619formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{testClass:_t$618rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$618|->{clazz:_t$617rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$617|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: ""|->{count:_t$638none, hash:_t$639none, offset:_t$640none, value:_t$641none}none:java.lang.String] [FRAME TYPING: "": java.lang.String ] do_imply n$8 _t$619 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$350initial:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$619 = n$8] |- n$8|->{testClass:_t$618rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$618|->{clazz:_t$617rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$617|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: ""|->{count:_t$638none, hash:_t$639none, offset:_t$640none, value:_t$641none}none:java.lang.String] [FRAME TYPING: "": java.lang.String ] do_imply val$3 _t$618 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$350initial:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$618 = val$3; _t$619 = n$8] |- val$3|->{clazz:_t$617rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$617|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal, filteredChildren:nullformal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$638none, hash:_t$639none, offset:_t$640none, value:_t$641none}none:java.lang.String] [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] do_imply val$4 _t$617 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$350initial:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$617 = val$4; _t$618 = val$3; _t$619 = n$8] |- val$4|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal, filteredChildren:nullformal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$638none, hash:_t$639none, offset:_t$640none, value:_t$641none}none:java.lang.String] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] do_imply val$5 "" Final Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$350initial:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$617 = val$4; _t$618 = val$3; _t$619 = n$8 val$5 = ""] |- [FRAME FLD: n$8|->{childrenLock:val$2formal, filteredChildren:nullformal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$638none, hash:_t$639none, offset:_t$640none, value:_t$641none}none:java.lang.String] [FRAME TYPING: val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] Result of Abduction SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$350initial:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$617 = val$4; _t$618 = val$3; _t$619 = n$8 val$5 = ""] |- val$4 != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$4|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); val$3|->{clazz:val$4rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:val$3rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal, filteredChildren:nullformal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$638none, hash:_t$639none, offset:_t$640none, value:_t$641none}none:java.lang.String] [FRAME TYPING: val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] returning TRUE in vpath_find exp:_t$620 vpath_find: cannot find _t$620 New footprint: val$5 = "" Frame fld: n$8|->{childrenLock:val$2formal, filteredChildren:nullformal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$638none, hash:_t$639none, offset:_t$640none, value:_t$641none}none:java.lang.String Frame typ: val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String Missing fld: Instantiated frame: val$7|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); &classRules|->val$7update:268:java.util.List*; &$RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->val$7formal:java.util.List*( sub ); &$irvar0|->0nullify:void; &return|->n$350initial:org.junit.runners.model.Statement*; &$T0_31|->n$351initial:void; &$irvar1|->n$352initial:void; &statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &old_statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &$irvar2|->n$353initial:void; &this|->n$8formal:org.junit.runners.ParentRunner*( sub ); &old_this|->n$8formal:org.junit.runners.ParentRunner*( sub ) Instantiated post: PROP 1 of 1: val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$620); RET < Class TestClass.getJavaClass() > (val$4); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = EXN _t$620update:270:org.junit.runner.Description* ; _t$620|->{}alloc:java.lang.IllegalArgumentException; val$4|->{name:""formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); n$8|->{testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** RESULTS FUNCTION CALL ******* PROP 1 of 1: val$1 = old_this; val$5 = "" ; (-1 < val$8); val$8 != 1; val$4 != null; null != ""; "" != ""; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Class TestClass.getJavaClass() > (val$4); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$4|->{name:""formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{}formal(z):java.lang.String( sub ) ***** END RESULTS FUNCTION CALL ******* pvar: classRules found error in dereference spec_pre: val$1 = old_this; val$5 = "" ; (-1 < val$8); val$8 != 1; val$4 != null; null != ""; "" != ""; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$620); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Class TestClass.getJavaClass() > (val$4); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$620update:270:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$620|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$4|->{name:""formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{}formal(z):java.lang.String( sub ) exp val$7 desc: Prover.check_inconsistency_base: inconsistency reason [Some 2] Prover.check_inconsistency_base: inconsistency reason [Some 2] EXECUTING SPEC 4/5 ACTUAL PRECONDITION = val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$350initial:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$621 != null; _t$621 != ""; _t$622 != null ; this|callee = _t$625formal:org.junit.runners.ParentRunner*( sub ) ; _t$621|->{}rearrange:(z)394:java.lang.String( sub ); _t$622|->{name:_t$621rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$623|->{clazz:_t$622rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$624|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$624rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$623rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$621 != null; _t$621 != ""; _t$622 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$626); MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(return|callee); UND < Annotation[] Class.getAnnotations() > :216(_t$628); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$629); LOCKED(_t$624); RET < Annotation[] TestClass.getAnnotations() > (_t$628); RET < List ParentRunner.getFilteredChildren() > (_t$629); RET < Class TestClass.getJavaClass() > (_t$622); RET < String Class.getName() > (_t$621); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$628); RET < TestClass ParentRunner.getTestClass() > (_t$623) ; return|callee = _t$627update:403:org.junit.runner.Description* ; _t$626|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; return|callee|->{fAnnotations:_t$628update:397, fChildren:_t$626update:(z)397, fDisplayName:_t$621update:397, fTestClass:_t$622update:397, fUniqueId:_t$621update:397}formal(z):org.junit.runner.Description; _t$621|->{}formal:java.lang.String( sub ); _t$622|->{name:_t$621formal(z)}formal(z):java.lang.Class( sub ); _t$623|->{clazz:_t$622formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$624|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$624formal, filteredChildren:_t$629update:(z)400, testClass:_t$623formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$621 != null; _t$621 != ""; _t$622 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$629); RET < Class TestClass.getJavaClass() > (_t$622); RET < String Class.getName() > (_t$621); RET < TestClass ParentRunner.getTestClass() > (_t$623) ; return|callee = EXN _t$629update:397:org.junit.runner.Description* ; _t$629|->{}alloc:java.lang.IllegalArgumentException; _t$621|->{}formal:java.lang.String( sub ); _t$622|->{name:_t$621formal(z)}formal(z):java.lang.Class( sub ); _t$623|->{clazz:_t$622formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$624|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$624formal, filteredChildren:nullformal(z), testClass:_t$623formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268(val$7); RET < boolean List.isEmpty() > (0) pi2: _t$621 != null; _t$621 != ""; _t$622 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$350initial:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$625formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{childrenLock:_t$624rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$623rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$624|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$623|->{clazz:_t$622rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$622|->{name:_t$621rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$621|->{}rearrange:(z)394:java.lang.String( sub ) do_imply n$8 _t$625 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$350initial:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$625 = n$8] |- n$8|->{childrenLock:_t$624rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$623rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$624|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$623|->{clazz:_t$622rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$622|->{name:_t$621rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$621|->{}rearrange:(z)394:java.lang.String( sub ) do_imply val$2 _t$624 do_imply null null do_imply val$3 _t$623 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$350initial:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$623 = val$3; _t$624 = val$2; _t$625 = n$8] |- val$2|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); val$3|->{clazz:_t$622rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$622|->{name:_t$621rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$621|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$4 _t$622 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$350initial:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$622 = val$4; _t$623 = val$3; _t$624 = val$2; _t$625 = n$8] |- val$2|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); val$4|->{name:_t$621rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$621|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$350initial:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ) [SUB: val$1 = n$8; _t$622 = val$4; _t$623 = val$3; _t$624 = val$2; _t$625 = n$8] |- val$4|->{name:_t$621rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$621|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$2: java.util.concurrent.locks.Lock( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$5 _t$621 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$350initial:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ) [SUB: val$1 = n$8; _t$621 = val$5; _t$622 = val$4; _t$623 = val$3; _t$624 = val$2; _t$625 = n$8] |- val$5|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$4: java.lang.Class( sub ) val$2: java.util.concurrent.locks.Lock( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$350initial:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ) [SUB: val$1 = n$8; _t$621 = val$5; _t$622 = val$4; _t$623 = val$3; _t$624 = val$2; _t$625 = n$8] |- [FRAME TYPING: val$5: java.lang.String( sub ) val$4: java.lang.Class( sub ) val$2: java.util.concurrent.locks.Lock( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Result of Abduction SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$350initial:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$621 = val$5; _t$622 = val$4; _t$623 = val$3; _t$624 = val$2; _t$625 = n$8] |- val$5 != null; val$5 != ""; val$4 != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$5|->{}rearrange:(z)394:java.lang.String( sub ); val$4|->{name:val$5rearrange:(z)15}rearrange:394:java.lang.Class( sub ); val$3|->{clazz:val$4rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); val$2|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:val$2rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: val$5: java.lang.String( sub ) val$4: java.lang.Class( sub ) val$2: java.util.concurrent.locks.Lock( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE in vpath_find exp:_t$626 vpath_find: cannot find _t$626 in vpath_find exp:_t$627 vpath_find: cannot find _t$627 in vpath_find exp:_t$629 vpath_find: cannot find _t$629 New footprint: Frame fld: Frame typ: val$5: java.lang.String( sub ) val$4: java.lang.Class( sub ) val$2: java.util.concurrent.locks.Lock( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) Missing fld: Instantiated frame: val$7|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); &classRules|->val$7update:268:java.util.List*; &$RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->val$7formal:java.util.List*( sub ); &$irvar0|->0nullify:void; &return|->n$350initial:org.junit.runners.model.Statement*; &$T0_31|->n$351initial:void; &$irvar1|->n$352initial:void; &statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &old_statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &$irvar2|->n$353initial:void; &this|->n$8formal:org.junit.runners.ParentRunner*( sub ); &old_this|->n$8formal:org.junit.runners.ParentRunner*( sub ) Instantiated post: PROP 1 of 2: val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$626); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(return|callee); UND < Annotation[] Class.getAnnotations() > :216(_t$628); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$629); LOCKED(val$2); RET < Annotation[] TestClass.getAnnotations() > (_t$628); RET < List ParentRunner.getFilteredChildren() > (_t$629); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$628); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = _t$627update:270:org.junit.runner.Description* ; _t$626|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; return|callee|->{fAnnotations:_t$628update:270, fChildren:_t$626update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$8|->{childrenLock:val$2formal, filteredChildren:_t$629update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$629); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = EXN _t$629update:270:org.junit.runner.Description* ; _t$629|->{}alloc:java.lang.IllegalArgumentException; val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$8|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** RESULTS FUNCTION CALL ******* PROP 1 of 2: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$1); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(val$2); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$350initial:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$2|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$10|->{fAnnotations:_t$1update:270, fChildren:_t$2update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{childrenLock:val$2formal, filteredChildren:_t$0update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** END RESULTS FUNCTION CALL ******* pvar: classRules found error in dereference spec_pre: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$626); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$628); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$629); LOCKED(val$2); RET < List ParentRunner.getFilteredChildren() > (_t$629); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$628); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$350initial:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$626|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$10|->{fAnnotations:_t$628update:270, fChildren:_t$626update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{childrenLock:val$2formal, filteredChildren:_t$629update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) exp val$7 desc: pvar: classRules found error in dereference spec_pre: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$629); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$629update:270:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$629|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) exp val$7 desc: Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] EXECUTING SPEC 5/5 ACTUAL PRECONDITION = val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$350initial:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$630 != null; _t$630 != ""; _t$631 != null; _t$633 != null ; this|callee = _t$634formal:org.junit.runners.ParentRunner*( sub ) ; _t$630|->{}rearrange:(z)394:java.lang.String( sub ); _t$631|->{name:_t$630rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$632|->{clazz:_t$631rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$633|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:_t$633rearrange:(z)530, testClass:_t$632rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$630 != null; _t$630 != ""; _t$631 != null; _t$633 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$635); MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(return|callee); UND < Annotation[] Class.getAnnotations() > :216(_t$637); RET < Annotation[] TestClass.getAnnotations() > (_t$637); RET < List ParentRunner.getFilteredChildren() > (_t$633); RET < Class TestClass.getJavaClass() > (_t$631); RET < String Class.getName() > (_t$630); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$637); RET < TestClass ParentRunner.getTestClass() > (_t$632) ; return|callee = _t$636update:403:org.junit.runner.Description* ; _t$635|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; return|callee|->{fAnnotations:_t$637update:397, fChildren:_t$635update:(z)397, fDisplayName:_t$630update:397, fTestClass:_t$631update:397, fUniqueId:_t$630update:397}formal(z):org.junit.runner.Description; _t$630|->{}formal:java.lang.String( sub ); _t$631|->{name:_t$630formal(z)}formal(z):java.lang.Class( sub ); _t$632|->{clazz:_t$631formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$633|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$633formal(z), testClass:_t$632formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$630 != null; _t$630 != ""; _t$631 != null; _t$633 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$636); RET < Class TestClass.getJavaClass() > (_t$631); RET < String Class.getName() > (_t$630); RET < TestClass ParentRunner.getTestClass() > (_t$632) ; return|callee = EXN _t$636update:397:org.junit.runner.Description* ; _t$636|->{}alloc:java.lang.IllegalArgumentException; _t$630|->{}formal:java.lang.String( sub ); _t$631|->{name:_t$630formal(z)}formal(z):java.lang.Class( sub ); _t$632|->{clazz:_t$631formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$633|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$633formal(z), testClass:_t$632formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268(val$7); RET < boolean List.isEmpty() > (0) pi2: _t$630 != null; _t$630 != ""; _t$631 != null; _t$633 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$350initial:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$634formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{filteredChildren:_t$633rearrange:(z)530, testClass:_t$632rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$633|->{}rearrange:400:java.util.List( sub ); _t$632|->{clazz:_t$631rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$631|->{name:_t$630rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$630|->{}rearrange:(z)394:java.lang.String( sub ) do_imply n$8 _t$634 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$350initial:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$634 = n$8] |- n$8|->{filteredChildren:_t$633rearrange:(z)530, testClass:_t$632rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$633|->{}rearrange:400:java.util.List( sub ); _t$632|->{clazz:_t$631rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$631|->{name:_t$630rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$630|->{}rearrange:(z)394:java.lang.String( sub ) do_imply null _t$633 do_imply val$3 _t$632 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$350initial:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$632 = val$3; _t$633 = null; _t$634 = n$8] |- null|->{}rearrange:400:java.util.List( sub ); val$3|->{clazz:_t$631rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$631|->{name:_t$630rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$630|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$4 _t$631 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$350initial:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$631 = val$4; _t$632 = val$3; _t$633 = null; _t$634 = n$8] |- null|->{}rearrange:400:java.util.List( sub ); val$4|->{name:_t$630rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$630|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$350initial:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$631 = val$4; _t$632 = val$3; _t$633 = null; _t$634 = n$8 null|->{}rearrange:400:java.util.List( sub )] |- val$4|->{name:_t$630rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$630|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$5 _t$630 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$350initial:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$630 = val$5; _t$631 = val$4; _t$632 = val$3; _t$633 = null; _t$634 = n$8 null|->{}rearrange:400:java.util.List( sub )] |- val$5|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$350initial:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$630 = val$5; _t$631 = val$4; _t$632 = val$3; _t$633 = null; _t$634 = n$8 null|->{}rearrange:400:java.util.List( sub )] |- [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$5: java.lang.String( sub ) val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] imply_pi: adding missing atom _t$633 != null Result of Abduction SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$350initial:org.junit.runners.model.Statement*; $T0_31 = n$351initial:void; $irvar1 = n$352initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$353initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$630 = val$5; _t$631 = val$4; _t$632 = val$3; _t$633 = null; _t$634 = n$8 _t$633 != null* null|->{}rearrange:400:java.util.List( sub )] |- val$5 != null; val$5 != ""; val$4 != null; null != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$5|->{}rearrange:(z)394:java.lang.String( sub ); val$4|->{name:val$5rearrange:(z)15}rearrange:394:java.lang.Class( sub ); val$3|->{clazz:val$4rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); null|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:nullrearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$5: java.lang.String( sub ) val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE Implication error: missing_sigma not empty in re-execution Instruction Returns PROP 1 of 2: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$6); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$5); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(val$2); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$4initial:org.junit.runners.model.Statement*; $T0_31 = _t$3initial:void; $irvar1 = _t$2initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$6|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$10|->{fAnnotations:_t$5update:270, fChildren:_t$6update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{childrenLock:val$2formal, filteredChildren:_t$0update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (n$10); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction *&$irvar1:org.junit.runner.Description*=n$10 [line 270] in vpath_find exp:n$354 vpath_find: cannot find n$354 in vpath_find exp:n$10 vpath_find: cannot find n$10 .... Rearrangement Start .... Exp: &$irvar1 Prop: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$354); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(n$355); UND < List Collections.unmodifiableList(ArrayList) > :534(n$356); LOCKED(val$2); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (n$356); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (n$355); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$357initial:org.junit.runners.model.Statement*; $T0_31 = n$358initial:void; $irvar1 = n$359initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$360initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$354|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:n$355update:270, fChildren:n$354update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{childrenLock:val$2formal, filteredChildren:n$356update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 1: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$2); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(val$2); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$5initial:org.junit.runners.model.Statement*; $T0_31 = _t$4initial:void; $irvar1 = n$10update:270:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$3|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); $irvar1|->{fAnnotations:_t$2update:270, fChildren:_t$3update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{childrenLock:val$2formal, filteredChildren:_t$0update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Skipping instr *&$irvar1:org.junit.runner.Description*=n$10 [line 270] due to exception Instruction NULLIFY(&this); [line 270] in vpath_find exp:_t$3 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$3 in vpath_find exp:n$10 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find n$10 Instruction Returns PROP 1 of 1: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$2); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(val$2); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$5initial:org.junit.runners.model.Statement*; $T0_31 = _t$4initial:void; $irvar1 = n$10update:270:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$3|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); $irvar1|->{fAnnotations:_t$2update:270, fChildren:_t$3update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{childrenLock:val$2formal, filteredChildren:_t$0update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction NULLIFY(&this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (n$10); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction EXIT_SCOPE(_,n$8,n$10,this); [line 270] in vpath_find exp:_t$3 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$3 in vpath_find exp:n$10 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find n$10 Instruction Returns PROP 1 of 1: (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$4); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$3); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(val$2); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$3); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$6initial:org.junit.runners.model.Statement*; $T0_31 = _t$5initial:void; $irvar1 = _t$2update:270:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$4|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $irvar1|->{fAnnotations:_t$3update:270, fChildren:_t$4update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:_t$0update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction EXIT_SCOPE(_,n$8,n$10,this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (_t$4); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) .... After Symbolic Execution .... PROP 1 of 2: (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$4); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$3); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(val$2); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$3); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$6initial:org.junit.runners.model.Statement*; $T0_31 = _t$5initial:void; $irvar1 = _t$2update:270:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$4|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $irvar1|->{fAnnotations:_t$3update:270, fChildren:_t$4update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:_t$0update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (_t$4); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub )
node10#session61(270) biabduction **** [RE:Pending] Statement ParentRunner.withClassRules(RunBefores) Node: 10, Procedure: Statement ParentRunner.withClassRules(RunBefores), Todo: 1 **** PROP 1 of 1: (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = val$1formal:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) .... Instructions: .... n$8=*&this:org.junit.runners.ParentRunner* [line 270]; _=*n$8:org.junit.runners.ParentRunner [line 270]; n$10=_fun_Description ParentRunner.getDescription()(n$8:org.junit.runners.ParentRunner*) virtual [line 270]; *&$irvar1:org.junit.runner.Description*=n$10 [line 270]; NULLIFY(&this); [line 270]; EXIT_SCOPE(_,n$8,n$10,this); [line 270]; Processing prop 1/1 Instruction n$8=*&this:org.junit.runners.ParentRunner* [line 270] .... Rearrangement Start .... Exp: &this Prop: (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$492initial:org.junit.runners.model.Statement*; $T0_31 = n$493initial:void; $irvar1 = n$494initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$495initial:void; this = val$1formal:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 1: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction _=*n$8:org.junit.runners.ParentRunner [line 270] .... Rearrangement Start .... Exp: n$8 Prop: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$496initial:org.junit.runners.model.Statement*; $T0_31 = n$497initial:void; $irvar1 = n$498initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$499initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 1: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction n$10=_fun_Description ParentRunner.getDescription()(n$8:org.junit.runners.ParentRunner*) virtual [line 270] Found 5 specs for function org.junit.runners.ParentRunner.getDescription():org.junit.runner.Description START EXECUTING SPECS FOR org.junit.runners.ParentRunner.getDescription():org.junit.runner.Description from state val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$500initial:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) EXECUTING SPEC 1/5 ACTUAL PRECONDITION = val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$500initial:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: this|callee = _t$867formal:org.junit.runners.ParentRunner*( sub ) ; _t$865|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$866|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$866rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$865rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$868); MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(return|callee); MEMna < Annotation[] ParentRunner.getRunnerAnnotations():395 > {vpath: }(_t$869); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$871); LOCKED(_t$866); RET < Annotation[] TestClass.getAnnotations() > (_t$869); RET < List ParentRunner.getFilteredChildren() > (_t$871); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$869); RET < TestClass ParentRunner.getTestClass() > (_t$865) ; return|callee = _t$870update:403:org.junit.runner.Description* ; _t$868|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$869|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$869update:395, fChildren:_t$868update:(z)395, fDisplayName:"null"update:395, fTestClass:nullupdate:395, fUniqueId:"null"update:395}formal(z):org.junit.runner.Description; _t$865|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$866|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$866formal, filteredChildren:_t$871update:(z)400, testClass:_t$865formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$871); RET < TestClass ParentRunner.getTestClass() > (_t$865) ; return|callee = EXN _t$871update:395:org.junit.runner.Description* ; _t$871|->{}alloc:java.lang.IllegalArgumentException; _t$865|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$866|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$866formal, filteredChildren:nullformal(z), testClass:_t$865formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268(val$7); RET < boolean List.isEmpty() > (0) pi2: returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$500initial:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$867formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{childrenLock:_t$866rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$865rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$866|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$865|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply n$8 _t$867 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$500initial:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$867 = n$8] |- n$8|->{childrenLock:_t$866rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$865rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$866|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$865|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply val$2 _t$866 do_imply null null do_imply val$3 _t$865 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$500initial:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$865 = val$3; _t$866 = val$2; _t$867 = n$8] |- val$2|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$4 null Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$500initial:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$865 = val$3; _t$866 = val$2; _t$867 = n$8 val$4 = null] |- val$2|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$500initial:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ) [SUB: val$1 = n$8; _t$865 = val$3; _t$866 = val$2; _t$867 = n$8 val$4 = null] |- [FRAME TYPING: val$2: java.util.concurrent.locks.Lock( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Result of Abduction SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$500initial:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$865 = val$3; _t$866 = val$2; _t$867 = n$8 val$4 = null] |- this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); val$2|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:val$2rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: val$2: java.util.concurrent.locks.Lock( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE in vpath_find exp:_t$868 vpath_find: cannot find _t$868 in vpath_find exp:_t$870 vpath_find: cannot find _t$870 in vpath_find exp:_t$869 vpath_find: cannot find _t$869 in vpath_find exp:_t$871 vpath_find: cannot find _t$871 New footprint: val$4 = null Frame fld: Frame typ: val$2: java.util.concurrent.locks.Lock( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) Missing fld: Instantiated frame: val$7|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); &classRules|->val$7update:268:java.util.List*; &$RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->val$7formal:java.util.List*( sub ); &$irvar0|->0nullify:void; &return|->n$500initial:org.junit.runners.model.Statement*; &$T0_31|->n$501initial:void; &$irvar1|->n$502initial:void; &statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &old_statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &$irvar2|->n$503initial:void; &this|->n$8formal:org.junit.runners.ParentRunner*( sub ); &old_this|->n$8formal:org.junit.runners.ParentRunner*( sub ) Instantiated post: PROP 1 of 2: MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$868); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(return|callee); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$869); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$871); LOCKED(val$2); RET < Annotation[] TestClass.getAnnotations() > (_t$869); RET < List ParentRunner.getFilteredChildren() > (_t$871); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$869); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = _t$870update:270:org.junit.runner.Description* ; _t$868|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$869|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$869update:270, fChildren:_t$868update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$8|->{childrenLock:val$2formal, filteredChildren:_t$871update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$871); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = EXN _t$871update:270:org.junit.runner.Description* ; _t$871|->{}alloc:java.lang.IllegalArgumentException; val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$8|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** RESULTS FUNCTION CALL ******* PROP 1 of 2: val$1 = old_this; val$4 = null ; (val$8 <= -1); val$5 != null; val$5 != ""; null != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(val$2); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$500initial:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$2|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$1|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$10|->{fAnnotations:_t$1update:270, fChildren:_t$2update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; old_this|->{childrenLock:val$2formal, filteredChildren:_t$0update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); null|->{name:val$5formal(z)}formal:java.lang.Class( sub ) PROP 2 of 2: val$1 = old_this; val$4 = null ; (val$8 <= -1); val$5 != null; val$5 != ""; null != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); null|->{name:val$5formal(z)}formal:java.lang.Class( sub ) ***** END RESULTS FUNCTION CALL ******* pvar: classRules found error in dereference spec_pre: val$1 = old_this; val$4 = null ; (val$8 <= -1); val$5 != null; val$5 != ""; null != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$868); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$869); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$871); LOCKED(val$2); RET < List ParentRunner.getFilteredChildren() > (_t$871); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$869); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$500initial:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$869|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; _t$868|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$10|->{fAnnotations:_t$869update:270, fChildren:_t$868update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; old_this|->{childrenLock:val$2formal, filteredChildren:_t$871update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); null|->{name:val$5formal(z)}formal:java.lang.Class( sub ) exp val$7 desc: pvar: classRules found error in dereference spec_pre: val$1 = old_this; val$4 = null ; (val$8 <= -1); val$5 != null; val$5 != ""; null != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$871); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$871update:270:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$871|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); null|->{name:val$5formal(z)}formal:java.lang.Class( sub ) exp val$7 desc: Prover.check_inconsistency_base: inconsistency reason [Some 0] Prover.check_inconsistency_base: inconsistency reason [Some 0] Prover.check_inconsistency_base: inconsistency reason [Some 0] EXECUTING SPEC 2/5 ACTUAL PRECONDITION = val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$500initial:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$873 != null ; this|callee = _t$874formal:org.junit.runners.ParentRunner*( sub ) ; _t$872|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$873|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:_t$873rearrange:(z)530, testClass:_t$872rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$873 != null; MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$875); MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(return|callee); MEMna < Annotation[] ParentRunner.getRunnerAnnotations():395 > {vpath: }(_t$876); RET < Annotation[] TestClass.getAnnotations() > (_t$876); RET < List ParentRunner.getFilteredChildren() > (_t$873); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$876); RET < TestClass ParentRunner.getTestClass() > (_t$872) ; return|callee = _t$877update:403:org.junit.runner.Description* ; _t$875|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$876|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$876update:395, fChildren:_t$875update:(z)395, fDisplayName:"null"update:395, fTestClass:nullupdate:395, fUniqueId:"null"update:395}formal(z):org.junit.runner.Description; _t$872|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$873|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$873formal(z), testClass:_t$872formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$873 != null; MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$877); RET < TestClass ParentRunner.getTestClass() > (_t$872) ; return|callee = EXN _t$877update:395:org.junit.runner.Description* ; _t$877|->{}alloc:java.lang.IllegalArgumentException; _t$872|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$873|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$873formal(z), testClass:_t$872formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268(val$7); RET < boolean List.isEmpty() > (0) pi2: _t$873 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$500initial:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$874formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{filteredChildren:_t$873rearrange:(z)530, testClass:_t$872rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$873|->{}rearrange:400:java.util.List( sub ); _t$872|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply n$8 _t$874 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$500initial:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$874 = n$8] |- n$8|->{filteredChildren:_t$873rearrange:(z)530, testClass:_t$872rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$873|->{}rearrange:400:java.util.List( sub ); _t$872|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply null _t$873 do_imply val$3 _t$872 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$500initial:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$872 = val$3; _t$873 = null; _t$874 = n$8] |- null|->{}rearrange:400:java.util.List( sub ); val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$4 null Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$500initial:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$872 = val$3; _t$873 = null; _t$874 = n$8 val$4 = null] |- null|->{}rearrange:400:java.util.List( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$500initial:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$872 = val$3; _t$873 = null; _t$874 = n$8 val$4 = null* null|->{}rearrange:400:java.util.List( sub )] |- [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Result of Abduction SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$500initial:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$872 = val$3; _t$873 = null; _t$874 = n$8 val$4 = null* null|->{}rearrange:400:java.util.List( sub )] |- null != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); null|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:nullrearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE Implication error: missing_sigma not empty in re-execution EXECUTING SPEC 3/5 ACTUAL PRECONDITION = val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$500initial:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$878 != null ; this|callee = _t$880formal:org.junit.runners.ParentRunner*( sub ) ; _t$878|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$879|->{clazz:_t$878rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:_t$879rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) POST 1 of 1: _t$878 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$881); RET < Class TestClass.getJavaClass() > (_t$878); RET < TestClass ParentRunner.getTestClass() > (_t$879) ; return|callee = EXN _t$881update:397:org.junit.runner.Description* ; _t$881|->{}alloc:java.lang.IllegalArgumentException; _t$878|->{name:""formal(z)}formal(z):java.lang.Class( sub ); _t$879|->{clazz:_t$878formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:_t$879formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268(val$7); RET < boolean List.isEmpty() > (0) pi2: _t$878 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$500initial:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$880formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{testClass:_t$879rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$879|->{clazz:_t$878rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$878|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$500initial:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$880formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{testClass:_t$879rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$879|->{clazz:_t$878rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$878|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: ""|->{count:_t$899none, hash:_t$900none, offset:_t$901none, value:_t$902none}none:java.lang.String] [FRAME TYPING: "": java.lang.String ] do_imply n$8 _t$880 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$500initial:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$880 = n$8] |- n$8|->{testClass:_t$879rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$879|->{clazz:_t$878rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$878|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: ""|->{count:_t$899none, hash:_t$900none, offset:_t$901none, value:_t$902none}none:java.lang.String] [FRAME TYPING: "": java.lang.String ] do_imply val$3 _t$879 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$500initial:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$879 = val$3; _t$880 = n$8] |- val$3|->{clazz:_t$878rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$878|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal, filteredChildren:nullformal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$899none, hash:_t$900none, offset:_t$901none, value:_t$902none}none:java.lang.String] [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] do_imply val$4 _t$878 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$500initial:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$878 = val$4; _t$879 = val$3; _t$880 = n$8] |- val$4|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal, filteredChildren:nullformal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$899none, hash:_t$900none, offset:_t$901none, value:_t$902none}none:java.lang.String] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] do_imply val$5 "" Final Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$500initial:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$878 = val$4; _t$879 = val$3; _t$880 = n$8 val$5 = ""] |- [FRAME FLD: n$8|->{childrenLock:val$2formal, filteredChildren:nullformal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$899none, hash:_t$900none, offset:_t$901none, value:_t$902none}none:java.lang.String] [FRAME TYPING: val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] Result of Abduction SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$500initial:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$878 = val$4; _t$879 = val$3; _t$880 = n$8 val$5 = ""] |- val$4 != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$4|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); val$3|->{clazz:val$4rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:val$3rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal, filteredChildren:nullformal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$899none, hash:_t$900none, offset:_t$901none, value:_t$902none}none:java.lang.String] [FRAME TYPING: val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] returning TRUE in vpath_find exp:_t$881 vpath_find: cannot find _t$881 New footprint: val$5 = "" Frame fld: n$8|->{childrenLock:val$2formal, filteredChildren:nullformal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$899none, hash:_t$900none, offset:_t$901none, value:_t$902none}none:java.lang.String Frame typ: val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String Missing fld: Instantiated frame: val$7|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); &classRules|->val$7update:268:java.util.List*; &$RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->val$7formal:java.util.List*( sub ); &$irvar0|->0nullify:void; &return|->n$500initial:org.junit.runners.model.Statement*; &$T0_31|->n$501initial:void; &$irvar1|->n$502initial:void; &statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &old_statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &$irvar2|->n$503initial:void; &this|->n$8formal:org.junit.runners.ParentRunner*( sub ); &old_this|->n$8formal:org.junit.runners.ParentRunner*( sub ) Instantiated post: PROP 1 of 1: val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$881); RET < Class TestClass.getJavaClass() > (val$4); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = EXN _t$881update:270:org.junit.runner.Description* ; _t$881|->{}alloc:java.lang.IllegalArgumentException; val$4|->{name:""formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); n$8|->{testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** RESULTS FUNCTION CALL ******* PROP 1 of 1: val$1 = old_this; val$5 = "" ; (val$8 <= -1); val$4 != null; null != ""; "" != ""; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Class TestClass.getJavaClass() > (val$4); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$4|->{name:""formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{}formal(z):java.lang.String( sub ) ***** END RESULTS FUNCTION CALL ******* pvar: classRules found error in dereference spec_pre: val$1 = old_this; val$5 = "" ; (val$8 <= -1); val$4 != null; null != ""; "" != ""; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$881); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Class TestClass.getJavaClass() > (val$4); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$881update:270:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$881|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$4|->{name:""formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{}formal(z):java.lang.String( sub ) exp val$7 desc: Prover.check_inconsistency_base: inconsistency reason [Some 2] Prover.check_inconsistency_base: inconsistency reason [Some 2] EXECUTING SPEC 4/5 ACTUAL PRECONDITION = val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$500initial:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$882 != null; _t$882 != ""; _t$883 != null ; this|callee = _t$886formal:org.junit.runners.ParentRunner*( sub ) ; _t$882|->{}rearrange:(z)394:java.lang.String( sub ); _t$883|->{name:_t$882rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$884|->{clazz:_t$883rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$885|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$885rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$884rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$882 != null; _t$882 != ""; _t$883 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$887); MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(return|callee); UND < Annotation[] Class.getAnnotations() > :216(_t$889); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$890); LOCKED(_t$885); RET < Annotation[] TestClass.getAnnotations() > (_t$889); RET < List ParentRunner.getFilteredChildren() > (_t$890); RET < Class TestClass.getJavaClass() > (_t$883); RET < String Class.getName() > (_t$882); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$889); RET < TestClass ParentRunner.getTestClass() > (_t$884) ; return|callee = _t$888update:403:org.junit.runner.Description* ; _t$887|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; return|callee|->{fAnnotations:_t$889update:397, fChildren:_t$887update:(z)397, fDisplayName:_t$882update:397, fTestClass:_t$883update:397, fUniqueId:_t$882update:397}formal(z):org.junit.runner.Description; _t$882|->{}formal:java.lang.String( sub ); _t$883|->{name:_t$882formal(z)}formal(z):java.lang.Class( sub ); _t$884|->{clazz:_t$883formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$885|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$885formal, filteredChildren:_t$890update:(z)400, testClass:_t$884formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$882 != null; _t$882 != ""; _t$883 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$890); RET < Class TestClass.getJavaClass() > (_t$883); RET < String Class.getName() > (_t$882); RET < TestClass ParentRunner.getTestClass() > (_t$884) ; return|callee = EXN _t$890update:397:org.junit.runner.Description* ; _t$890|->{}alloc:java.lang.IllegalArgumentException; _t$882|->{}formal:java.lang.String( sub ); _t$883|->{name:_t$882formal(z)}formal(z):java.lang.Class( sub ); _t$884|->{clazz:_t$883formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$885|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$885formal, filteredChildren:nullformal(z), testClass:_t$884formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268(val$7); RET < boolean List.isEmpty() > (0) pi2: _t$882 != null; _t$882 != ""; _t$883 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$500initial:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$886formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{childrenLock:_t$885rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$884rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$885|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$884|->{clazz:_t$883rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$883|->{name:_t$882rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$882|->{}rearrange:(z)394:java.lang.String( sub ) do_imply n$8 _t$886 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$500initial:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$886 = n$8] |- n$8|->{childrenLock:_t$885rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$884rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$885|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$884|->{clazz:_t$883rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$883|->{name:_t$882rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$882|->{}rearrange:(z)394:java.lang.String( sub ) do_imply val$2 _t$885 do_imply null null do_imply val$3 _t$884 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$500initial:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$884 = val$3; _t$885 = val$2; _t$886 = n$8] |- val$2|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); val$3|->{clazz:_t$883rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$883|->{name:_t$882rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$882|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$4 _t$883 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$500initial:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$883 = val$4; _t$884 = val$3; _t$885 = val$2; _t$886 = n$8] |- val$2|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); val$4|->{name:_t$882rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$882|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$500initial:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ) [SUB: val$1 = n$8; _t$883 = val$4; _t$884 = val$3; _t$885 = val$2; _t$886 = n$8] |- val$4|->{name:_t$882rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$882|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$2: java.util.concurrent.locks.Lock( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$5 _t$882 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$500initial:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ) [SUB: val$1 = n$8; _t$882 = val$5; _t$883 = val$4; _t$884 = val$3; _t$885 = val$2; _t$886 = n$8] |- val$5|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$4: java.lang.Class( sub ) val$2: java.util.concurrent.locks.Lock( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$500initial:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [SUB: val$1 = n$8; _t$882 = val$5; _t$883 = val$4; _t$884 = val$3; _t$885 = val$2; _t$886 = n$8] |- [FRAME TYPING: val$5: java.lang.String( sub ) val$4: java.lang.Class( sub ) val$2: java.util.concurrent.locks.Lock( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Result of Abduction SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$500initial:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$882 = val$5; _t$883 = val$4; _t$884 = val$3; _t$885 = val$2; _t$886 = n$8] |- val$5 != null; val$5 != ""; val$4 != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$5|->{}rearrange:(z)394:java.lang.String( sub ); val$4|->{name:val$5rearrange:(z)15}rearrange:394:java.lang.Class( sub ); val$3|->{clazz:val$4rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); val$2|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:val$2rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: val$5: java.lang.String( sub ) val$4: java.lang.Class( sub ) val$2: java.util.concurrent.locks.Lock( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE in vpath_find exp:_t$887 vpath_find: cannot find _t$887 in vpath_find exp:_t$888 vpath_find: cannot find _t$888 in vpath_find exp:_t$890 vpath_find: cannot find _t$890 New footprint: Frame fld: Frame typ: val$5: java.lang.String( sub ) val$4: java.lang.Class( sub ) val$2: java.util.concurrent.locks.Lock( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) Missing fld: Instantiated frame: val$7|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); &classRules|->val$7update:268:java.util.List*; &$RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->val$7formal:java.util.List*( sub ); &$irvar0|->0nullify:void; &return|->n$500initial:org.junit.runners.model.Statement*; &$T0_31|->n$501initial:void; &$irvar1|->n$502initial:void; &statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &old_statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &$irvar2|->n$503initial:void; &this|->n$8formal:org.junit.runners.ParentRunner*( sub ); &old_this|->n$8formal:org.junit.runners.ParentRunner*( sub ) Instantiated post: PROP 1 of 2: val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$887); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(return|callee); UND < Annotation[] Class.getAnnotations() > :216(_t$889); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$890); LOCKED(val$2); RET < Annotation[] TestClass.getAnnotations() > (_t$889); RET < List ParentRunner.getFilteredChildren() > (_t$890); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$889); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = _t$888update:270:org.junit.runner.Description* ; _t$887|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; return|callee|->{fAnnotations:_t$889update:270, fChildren:_t$887update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$8|->{childrenLock:val$2formal, filteredChildren:_t$890update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$890); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = EXN _t$890update:270:org.junit.runner.Description* ; _t$890|->{}alloc:java.lang.IllegalArgumentException; val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$8|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** RESULTS FUNCTION CALL ******* PROP 1 of 2: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$1); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(val$2); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$500initial:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$2|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$10|->{fAnnotations:_t$1update:270, fChildren:_t$2update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{childrenLock:val$2formal, filteredChildren:_t$0update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** END RESULTS FUNCTION CALL ******* pvar: classRules found error in dereference spec_pre: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$887); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$889); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$890); LOCKED(val$2); RET < List ParentRunner.getFilteredChildren() > (_t$890); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$889); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$500initial:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$887|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$10|->{fAnnotations:_t$889update:270, fChildren:_t$887update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{childrenLock:val$2formal, filteredChildren:_t$890update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) exp val$7 desc: pvar: classRules found error in dereference spec_pre: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$890); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$890update:270:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$890|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) exp val$7 desc: Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] EXECUTING SPEC 5/5 ACTUAL PRECONDITION = val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$500initial:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$891 != null; _t$891 != ""; _t$892 != null; _t$894 != null ; this|callee = _t$895formal:org.junit.runners.ParentRunner*( sub ) ; _t$891|->{}rearrange:(z)394:java.lang.String( sub ); _t$892|->{name:_t$891rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$893|->{clazz:_t$892rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$894|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:_t$894rearrange:(z)530, testClass:_t$893rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$891 != null; _t$891 != ""; _t$892 != null; _t$894 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$896); MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(return|callee); UND < Annotation[] Class.getAnnotations() > :216(_t$898); RET < Annotation[] TestClass.getAnnotations() > (_t$898); RET < List ParentRunner.getFilteredChildren() > (_t$894); RET < Class TestClass.getJavaClass() > (_t$892); RET < String Class.getName() > (_t$891); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$898); RET < TestClass ParentRunner.getTestClass() > (_t$893) ; return|callee = _t$897update:403:org.junit.runner.Description* ; _t$896|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; return|callee|->{fAnnotations:_t$898update:397, fChildren:_t$896update:(z)397, fDisplayName:_t$891update:397, fTestClass:_t$892update:397, fUniqueId:_t$891update:397}formal(z):org.junit.runner.Description; _t$891|->{}formal:java.lang.String( sub ); _t$892|->{name:_t$891formal(z)}formal(z):java.lang.Class( sub ); _t$893|->{clazz:_t$892formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$894|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$894formal(z), testClass:_t$893formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$891 != null; _t$891 != ""; _t$892 != null; _t$894 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$897); RET < Class TestClass.getJavaClass() > (_t$892); RET < String Class.getName() > (_t$891); RET < TestClass ParentRunner.getTestClass() > (_t$893) ; return|callee = EXN _t$897update:397:org.junit.runner.Description* ; _t$897|->{}alloc:java.lang.IllegalArgumentException; _t$891|->{}formal:java.lang.String( sub ); _t$892|->{name:_t$891formal(z)}formal(z):java.lang.Class( sub ); _t$893|->{clazz:_t$892formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$894|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$894formal(z), testClass:_t$893formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268(val$7); RET < boolean List.isEmpty() > (0) pi2: _t$891 != null; _t$891 != ""; _t$892 != null; _t$894 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$500initial:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$895formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{filteredChildren:_t$894rearrange:(z)530, testClass:_t$893rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$894|->{}rearrange:400:java.util.List( sub ); _t$893|->{clazz:_t$892rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$892|->{name:_t$891rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$891|->{}rearrange:(z)394:java.lang.String( sub ) do_imply n$8 _t$895 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$500initial:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$895 = n$8] |- n$8|->{filteredChildren:_t$894rearrange:(z)530, testClass:_t$893rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$894|->{}rearrange:400:java.util.List( sub ); _t$893|->{clazz:_t$892rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$892|->{name:_t$891rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$891|->{}rearrange:(z)394:java.lang.String( sub ) do_imply null _t$894 do_imply val$3 _t$893 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$500initial:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$893 = val$3; _t$894 = null; _t$895 = n$8] |- null|->{}rearrange:400:java.util.List( sub ); val$3|->{clazz:_t$892rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$892|->{name:_t$891rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$891|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$4 _t$892 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$500initial:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$892 = val$4; _t$893 = val$3; _t$894 = null; _t$895 = n$8] |- null|->{}rearrange:400:java.util.List( sub ); val$4|->{name:_t$891rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$891|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$500initial:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$892 = val$4; _t$893 = val$3; _t$894 = null; _t$895 = n$8 null|->{}rearrange:400:java.util.List( sub )] |- val$4|->{name:_t$891rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$891|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$5 _t$891 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$500initial:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$891 = val$5; _t$892 = val$4; _t$893 = val$3; _t$894 = null; _t$895 = n$8 null|->{}rearrange:400:java.util.List( sub )] |- val$5|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$500initial:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$891 = val$5; _t$892 = val$4; _t$893 = val$3; _t$894 = null; _t$895 = n$8 null|->{}rearrange:400:java.util.List( sub )] |- [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$5: java.lang.String( sub ) val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] imply_pi: adding missing atom _t$894 != null Result of Abduction SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$500initial:org.junit.runners.model.Statement*; $T0_31 = n$501initial:void; $irvar1 = n$502initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$503initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$891 = val$5; _t$892 = val$4; _t$893 = val$3; _t$894 = null; _t$895 = n$8 _t$894 != null* null|->{}rearrange:400:java.util.List( sub )] |- val$5 != null; val$5 != ""; val$4 != null; null != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$5|->{}rearrange:(z)394:java.lang.String( sub ); val$4|->{name:val$5rearrange:(z)15}rearrange:394:java.lang.Class( sub ); val$3|->{clazz:val$4rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); null|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:nullrearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$5: java.lang.String( sub ) val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE Implication error: missing_sigma not empty in re-execution Instruction Returns PROP 1 of 2: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$6); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$5); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(val$2); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$4initial:org.junit.runners.model.Statement*; $T0_31 = _t$3initial:void; $irvar1 = _t$2initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$6|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$10|->{fAnnotations:_t$5update:270, fChildren:_t$6update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{childrenLock:val$2formal, filteredChildren:_t$0update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (n$10); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction *&$irvar1:org.junit.runner.Description*=n$10 [line 270] in vpath_find exp:n$504 vpath_find: cannot find n$504 in vpath_find exp:n$10 vpath_find: cannot find n$10 .... Rearrangement Start .... Exp: &$irvar1 Prop: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$504); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(n$505); UND < List Collections.unmodifiableList(ArrayList) > :534(n$506); LOCKED(val$2); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (n$506); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (n$505); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$507initial:org.junit.runners.model.Statement*; $T0_31 = n$508initial:void; $irvar1 = n$509initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$510initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$504|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:n$505update:270, fChildren:n$504update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{childrenLock:val$2formal, filteredChildren:n$506update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 1: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$2); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(val$2); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$5initial:org.junit.runners.model.Statement*; $T0_31 = _t$4initial:void; $irvar1 = n$10update:270:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$3|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); $irvar1|->{fAnnotations:_t$2update:270, fChildren:_t$3update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{childrenLock:val$2formal, filteredChildren:_t$0update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Skipping instr *&$irvar1:org.junit.runner.Description*=n$10 [line 270] due to exception Instruction NULLIFY(&this); [line 270] in vpath_find exp:_t$3 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$3 in vpath_find exp:n$10 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find n$10 Instruction Returns PROP 1 of 1: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$2); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(val$2); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$5initial:org.junit.runners.model.Statement*; $T0_31 = _t$4initial:void; $irvar1 = n$10update:270:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$3|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); $irvar1|->{fAnnotations:_t$2update:270, fChildren:_t$3update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{childrenLock:val$2formal, filteredChildren:_t$0update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction NULLIFY(&this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (n$10); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction EXIT_SCOPE(_,n$8,n$10,this); [line 270] in vpath_find exp:_t$3 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$3 in vpath_find exp:n$10 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find n$10 Instruction Returns PROP 1 of 1: (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$4); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$3); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(val$2); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$3); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$6initial:org.junit.runners.model.Statement*; $T0_31 = _t$5initial:void; $irvar1 = _t$2update:270:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$4|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $irvar1|->{fAnnotations:_t$3update:270, fChildren:_t$4update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:_t$0update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction EXIT_SCOPE(_,n$8,n$10,this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (_t$4); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) .... After Symbolic Execution .... PROP 1 of 2: (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$4); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$3); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(val$2); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$3); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$6initial:org.junit.runners.model.Statement*; $T0_31 = _t$5initial:void; $irvar1 = _t$2update:270:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$4|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $irvar1|->{fAnnotations:_t$3update:270, fChildren:_t$4update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:_t$0update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (_t$4); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub )
node10#session76(270) biabduction **** [RE:Pending] Statement ParentRunner.withClassRules(RunBefores) Node: 10, Procedure: Statement ParentRunner.withClassRules(RunBefores), Todo: 1 **** PROP 1 of 1: (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = val$1formal:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) .... Instructions: .... n$8=*&this:org.junit.runners.ParentRunner* [line 270]; _=*n$8:org.junit.runners.ParentRunner [line 270]; n$10=_fun_Description ParentRunner.getDescription()(n$8:org.junit.runners.ParentRunner*) virtual [line 270]; *&$irvar1:org.junit.runner.Description*=n$10 [line 270]; NULLIFY(&this); [line 270]; EXIT_SCOPE(_,n$8,n$10,this); [line 270]; Processing prop 1/1 Instruction n$8=*&this:org.junit.runners.ParentRunner* [line 270] .... Rearrangement Start .... Exp: &this Prop: (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$651initial:org.junit.runners.model.Statement*; $T0_31 = n$652initial:void; $irvar1 = n$653initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$654initial:void; this = val$1formal:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 1: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction _=*n$8:org.junit.runners.ParentRunner [line 270] .... Rearrangement Start .... Exp: n$8 Prop: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$655initial:org.junit.runners.model.Statement*; $T0_31 = n$656initial:void; $irvar1 = n$657initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$658initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 1: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction n$10=_fun_Description ParentRunner.getDescription()(n$8:org.junit.runners.ParentRunner*) virtual [line 270] Found 5 specs for function org.junit.runners.ParentRunner.getDescription():org.junit.runner.Description START EXECUTING SPECS FOR org.junit.runners.ParentRunner.getDescription():org.junit.runner.Description from state val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$659initial:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) EXECUTING SPEC 1/5 ACTUAL PRECONDITION = val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$659initial:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: this|callee = _t$1146formal:org.junit.runners.ParentRunner*( sub ) ; _t$1144|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1145|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$1145rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$1144rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$1147); MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(return|callee); MEMna < Annotation[] ParentRunner.getRunnerAnnotations():395 > {vpath: }(_t$1148); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$1150); LOCKED(_t$1145); RET < Annotation[] TestClass.getAnnotations() > (_t$1148); RET < List ParentRunner.getFilteredChildren() > (_t$1150); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1148); RET < TestClass ParentRunner.getTestClass() > (_t$1144) ; return|callee = _t$1149update:403:org.junit.runner.Description* ; _t$1147|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$1148|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$1148update:395, fChildren:_t$1147update:(z)395, fDisplayName:"null"update:395, fTestClass:nullupdate:395, fUniqueId:"null"update:395}formal(z):org.junit.runner.Description; _t$1144|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$1145|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$1145formal, filteredChildren:_t$1150update:(z)400, testClass:_t$1144formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$1150); RET < TestClass ParentRunner.getTestClass() > (_t$1144) ; return|callee = EXN _t$1150update:395:org.junit.runner.Description* ; _t$1150|->{}alloc:java.lang.IllegalArgumentException; _t$1144|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$1145|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$1145formal, filteredChildren:nullformal(z), testClass:_t$1144formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268(val$7); RET < boolean List.isEmpty() > (0) pi2: returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$659initial:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$1146formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{childrenLock:_t$1145rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$1144rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$1145|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$1144|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply n$8 _t$1146 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$659initial:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$1146 = n$8] |- n$8|->{childrenLock:_t$1145rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$1144rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$1145|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$1144|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply val$2 null do_imply val$3 _t$1144 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$659initial:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$1144 = val$3; _t$1145 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$1146 = n$8 val$2 = null MISSING FLD: n$8|->{childrenLock:_t$1145rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$4 null Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$659initial:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$1144 = val$3; _t$1145 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$1146 = n$8 val$4 = null; val$2 = null MISSING FLD: n$8|->{childrenLock:_t$1145rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$659initial:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$1144 = val$3; _t$1145 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$1146 = n$8 val$4 = null; val$2 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$1145rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Result of Abduction SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$659initial:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$1144 = val$3; _t$1145 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$1146 = n$8 val$4 = null; val$2 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$1145rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:%path%n8_org.junit.runners.ParentRunner.childrenLock$-3rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE WARNING: Missing fields hpred has non-footprint vars: n$8|->{childrenLock:%path%n8_org.junit.runners.ParentRunner.childrenLock$-3rearrange:531}formal(z):org.junit.runners.ParentRunner( sub ) Implication error: missing_sigma not empty in re-execution EXECUTING SPEC 2/5 ACTUAL PRECONDITION = val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$659initial:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$1152 != null ; this|callee = _t$1153formal:org.junit.runners.ParentRunner*( sub ) ; _t$1151|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1152|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:_t$1152rearrange:(z)530, testClass:_t$1151rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$1152 != null; MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$1154); MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(return|callee); MEMna < Annotation[] ParentRunner.getRunnerAnnotations():395 > {vpath: }(_t$1155); RET < Annotation[] TestClass.getAnnotations() > (_t$1155); RET < List ParentRunner.getFilteredChildren() > (_t$1152); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1155); RET < TestClass ParentRunner.getTestClass() > (_t$1151) ; return|callee = _t$1156update:403:org.junit.runner.Description* ; _t$1154|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$1155|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$1155update:395, fChildren:_t$1154update:(z)395, fDisplayName:"null"update:395, fTestClass:nullupdate:395, fUniqueId:"null"update:395}formal(z):org.junit.runner.Description; _t$1151|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$1152|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$1152formal(z), testClass:_t$1151formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$1152 != null; MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$1156); RET < TestClass ParentRunner.getTestClass() > (_t$1151) ; return|callee = EXN _t$1156update:395:org.junit.runner.Description* ; _t$1156|->{}alloc:java.lang.IllegalArgumentException; _t$1151|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$1152|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$1152formal(z), testClass:_t$1151formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268(val$7); RET < boolean List.isEmpty() > (0) pi2: _t$1152 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$659initial:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$1153formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{filteredChildren:_t$1152rearrange:(z)530, testClass:_t$1151rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$1152|->{}rearrange:400:java.util.List( sub ); _t$1151|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply n$8 _t$1153 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$659initial:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$1153 = n$8] |- n$8|->{filteredChildren:_t$1152rearrange:(z)530, testClass:_t$1151rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$1152|->{}rearrange:400:java.util.List( sub ); _t$1151|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply val$2 _t$1152 do_imply val$3 _t$1151 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$659initial:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$1151 = val$3; _t$1152 = val$2; _t$1153 = n$8] |- val$2|->{}rearrange:400:java.util.List( sub ); val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$4 null Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$659initial:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$1151 = val$3; _t$1152 = val$2; _t$1153 = n$8 val$4 = null] |- val$2|->{}rearrange:400:java.util.List( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$659initial:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ) [SUB: val$1 = n$8; _t$1151 = val$3; _t$1152 = val$2; _t$1153 = n$8 val$4 = null] |- [FRAME TYPING: val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Result of Abduction SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$659initial:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$1151 = val$3; _t$1152 = val$2; _t$1153 = n$8 val$4 = null] |- val$2 != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); val$2|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:val$2rearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE in vpath_find exp:_t$1154 vpath_find: cannot find _t$1154 in vpath_find exp:_t$1156 vpath_find: cannot find _t$1156 in vpath_find exp:_t$1155 vpath_find: cannot find _t$1155 in vpath_find exp:_t$1156 vpath_find: cannot find _t$1156 New footprint: val$4 = null Frame fld: Frame typ: val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) Missing fld: Instantiated frame: val$7|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); &classRules|->val$7update:268:java.util.List*; &$RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->val$7formal:java.util.List*( sub ); &$irvar0|->0nullify:void; &return|->n$659initial:org.junit.runners.model.Statement*; &$T0_31|->n$660initial:void; &$irvar1|->n$661initial:void; &statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &old_statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &$irvar2|->n$662initial:void; &this|->n$8formal:org.junit.runners.ParentRunner*( sub ); &old_this|->n$8formal:org.junit.runners.ParentRunner*( sub ) Instantiated post: PROP 1 of 2: val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1154); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(return|callee); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$1155); RET < Annotation[] TestClass.getAnnotations() > (_t$1155); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1155); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = _t$1156update:270:org.junit.runner.Description* ; _t$1154|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$1155|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$1155update:270, fChildren:_t$1154update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$8|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1156); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = EXN _t$1156update:270:org.junit.runner.Description* ; _t$1156|->{}alloc:java.lang.IllegalArgumentException; val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$8|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** RESULTS FUNCTION CALL ******* PROP 1 of 2: val$1 = old_this; val$4 = null ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$2 != null; null != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$0); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$659initial:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$1|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$0|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$10|->{fAnnotations:_t$0update:270, fChildren:_t$1update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); null|->{name:val$5formal(z)}formal:java.lang.Class( sub ) PROP 2 of 2: val$1 = old_this; val$4 = null ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$2 != null; null != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); null|->{name:val$5formal(z)}formal:java.lang.Class( sub ) ***** END RESULTS FUNCTION CALL ******* pvar: classRules found error in dereference spec_pre: val$1 = old_this; val$4 = null ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$2 != null; null != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1154); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$1155); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1155); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$659initial:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$1155|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; _t$1154|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$10|->{fAnnotations:_t$1155update:270, fChildren:_t$1154update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); null|->{name:val$5formal(z)}formal:java.lang.Class( sub ) exp val$7 desc: pvar: classRules found error in dereference spec_pre: val$1 = old_this; val$4 = null ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$2 != null; null != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1156); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$1156update:270:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$1156|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); null|->{name:val$5formal(z)}formal:java.lang.Class( sub ) exp val$7 desc: Prover.check_inconsistency_base: inconsistency reason [Some 0] Prover.check_inconsistency_base: inconsistency reason [Some 0] Prover.check_inconsistency_base: inconsistency reason [Some 0] EXECUTING SPEC 3/5 ACTUAL PRECONDITION = val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$659initial:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$1157 != null ; this|callee = _t$1159formal:org.junit.runners.ParentRunner*( sub ) ; _t$1157|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1158|->{clazz:_t$1157rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:_t$1158rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) POST 1 of 1: _t$1157 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$1160); RET < Class TestClass.getJavaClass() > (_t$1157); RET < TestClass ParentRunner.getTestClass() > (_t$1158) ; return|callee = EXN _t$1160update:397:org.junit.runner.Description* ; _t$1160|->{}alloc:java.lang.IllegalArgumentException; _t$1157|->{name:""formal(z)}formal(z):java.lang.Class( sub ); _t$1158|->{clazz:_t$1157formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:_t$1158formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268(val$7); RET < boolean List.isEmpty() > (0) pi2: _t$1157 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$659initial:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$1159formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{testClass:_t$1158rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$1158|->{clazz:_t$1157rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1157|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$659initial:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$1159formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{testClass:_t$1158rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$1158|->{clazz:_t$1157rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1157|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: ""|->{count:_t$1178none, hash:_t$1179none, offset:_t$1180none, value:_t$1181none}none:java.lang.String] [FRAME TYPING: "": java.lang.String ] do_imply n$8 _t$1159 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$659initial:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$1159 = n$8] |- n$8|->{testClass:_t$1158rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$1158|->{clazz:_t$1157rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1157|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: ""|->{count:_t$1178none, hash:_t$1179none, offset:_t$1180none, value:_t$1181none}none:java.lang.String] [FRAME TYPING: "": java.lang.String ] do_imply val$3 _t$1158 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$659initial:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$1158 = val$3; _t$1159 = n$8] |- val$3|->{clazz:_t$1157rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1157|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: n$8|->{filteredChildren:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$1178none, hash:_t$1179none, offset:_t$1180none, value:_t$1181none}none:java.lang.String] [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] do_imply val$4 _t$1157 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$659initial:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$1157 = val$4; _t$1158 = val$3; _t$1159 = n$8] |- val$4|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: n$8|->{filteredChildren:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$1178none, hash:_t$1179none, offset:_t$1180none, value:_t$1181none}none:java.lang.String] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] do_imply val$5 "" Final Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$659initial:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$1157 = val$4; _t$1158 = val$3; _t$1159 = n$8 val$5 = ""] |- [FRAME FLD: n$8|->{filteredChildren:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$1178none, hash:_t$1179none, offset:_t$1180none, value:_t$1181none}none:java.lang.String] [FRAME TYPING: val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] Result of Abduction SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$659initial:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$1157 = val$4; _t$1158 = val$3; _t$1159 = n$8 val$5 = ""] |- val$4 != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$4|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); val$3|->{clazz:val$4rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:val$3rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME FLD: n$8|->{filteredChildren:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$1178none, hash:_t$1179none, offset:_t$1180none, value:_t$1181none}none:java.lang.String] [FRAME TYPING: val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] returning TRUE in vpath_find exp:_t$1160 vpath_find: cannot find _t$1160 New footprint: val$5 = "" Frame fld: n$8|->{filteredChildren:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$1178none, hash:_t$1179none, offset:_t$1180none, value:_t$1181none}none:java.lang.String Frame typ: val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String Missing fld: Instantiated frame: val$7|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$2|->{}formal:java.util.List( sub ); &classRules|->val$7update:268:java.util.List*; &$RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->val$7formal:java.util.List*( sub ); &$irvar0|->0nullify:void; &return|->n$659initial:org.junit.runners.model.Statement*; &$T0_31|->n$660initial:void; &$irvar1|->n$661initial:void; &statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &old_statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &$irvar2|->n$662initial:void; &this|->n$8formal:org.junit.runners.ParentRunner*( sub ); &old_this|->n$8formal:org.junit.runners.ParentRunner*( sub ) Instantiated post: PROP 1 of 1: val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1160); RET < Class TestClass.getJavaClass() > (val$4); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = EXN _t$1160update:270:org.junit.runner.Description* ; _t$1160|->{}alloc:java.lang.IllegalArgumentException; val$4|->{name:""formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); n$8|->{testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** RESULTS FUNCTION CALL ******* PROP 1 of 1: val$1 = old_this; val$5 = "" ; (-1 < val$8); val$8 != 1; val$4 != null; val$2 != null; null != ""; "" != ""; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Class TestClass.getJavaClass() > (val$4); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$4|->{name:""formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{}formal(z):java.lang.String( sub ) ***** END RESULTS FUNCTION CALL ******* pvar: classRules found error in dereference spec_pre: val$1 = old_this; val$5 = "" ; (-1 < val$8); val$8 != 1; val$4 != null; val$2 != null; null != ""; "" != ""; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1160); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Class TestClass.getJavaClass() > (val$4); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$1160update:270:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$1160|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$4|->{name:""formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{}formal(z):java.lang.String( sub ) exp val$7 desc: Prover.check_inconsistency_base: inconsistency reason [Some 2] Prover.check_inconsistency_base: inconsistency reason [Some 2] EXECUTING SPEC 4/5 ACTUAL PRECONDITION = val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$659initial:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$1161 != null; _t$1161 != ""; _t$1162 != null ; this|callee = _t$1165formal:org.junit.runners.ParentRunner*( sub ) ; _t$1161|->{}rearrange:(z)394:java.lang.String( sub ); _t$1162|->{name:_t$1161rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1163|->{clazz:_t$1162rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1164|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$1164rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$1163rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$1161 != null; _t$1161 != ""; _t$1162 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$1166); MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(return|callee); UND < Annotation[] Class.getAnnotations() > :216(_t$1168); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$1169); LOCKED(_t$1164); RET < Annotation[] TestClass.getAnnotations() > (_t$1168); RET < List ParentRunner.getFilteredChildren() > (_t$1169); RET < Class TestClass.getJavaClass() > (_t$1162); RET < String Class.getName() > (_t$1161); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1168); RET < TestClass ParentRunner.getTestClass() > (_t$1163) ; return|callee = _t$1167update:403:org.junit.runner.Description* ; _t$1166|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; return|callee|->{fAnnotations:_t$1168update:397, fChildren:_t$1166update:(z)397, fDisplayName:_t$1161update:397, fTestClass:_t$1162update:397, fUniqueId:_t$1161update:397}formal(z):org.junit.runner.Description; _t$1161|->{}formal:java.lang.String( sub ); _t$1162|->{name:_t$1161formal(z)}formal(z):java.lang.Class( sub ); _t$1163|->{clazz:_t$1162formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$1164|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$1164formal, filteredChildren:_t$1169update:(z)400, testClass:_t$1163formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$1161 != null; _t$1161 != ""; _t$1162 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$1169); RET < Class TestClass.getJavaClass() > (_t$1162); RET < String Class.getName() > (_t$1161); RET < TestClass ParentRunner.getTestClass() > (_t$1163) ; return|callee = EXN _t$1169update:397:org.junit.runner.Description* ; _t$1169|->{}alloc:java.lang.IllegalArgumentException; _t$1161|->{}formal:java.lang.String( sub ); _t$1162|->{name:_t$1161formal(z)}formal(z):java.lang.Class( sub ); _t$1163|->{clazz:_t$1162formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$1164|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$1164formal, filteredChildren:nullformal(z), testClass:_t$1163formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268(val$7); RET < boolean List.isEmpty() > (0) pi2: _t$1161 != null; _t$1161 != ""; _t$1162 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$659initial:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$1165formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{childrenLock:_t$1164rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$1163rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$1164|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$1163|->{clazz:_t$1162rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1162|->{name:_t$1161rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1161|->{}rearrange:(z)394:java.lang.String( sub ) do_imply n$8 _t$1165 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$659initial:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$1165 = n$8] |- n$8|->{childrenLock:_t$1164rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$1163rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$1164|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$1163|->{clazz:_t$1162rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1162|->{name:_t$1161rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1161|->{}rearrange:(z)394:java.lang.String( sub ) do_imply val$2 null do_imply val$3 _t$1163 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$659initial:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$1163 = val$3; _t$1164 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$1165 = n$8 val$2 = null MISSING FLD: n$8|->{childrenLock:_t$1164rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); val$3|->{clazz:_t$1162rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1162|->{name:_t$1161rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1161|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$4 _t$1162 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$659initial:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$1162 = val$4; _t$1163 = val$3; _t$1164 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$1165 = n$8 val$2 = null MISSING FLD: n$8|->{childrenLock:_t$1164rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); val$4|->{name:_t$1161rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1161|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$659initial:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$1162 = val$4; _t$1163 = val$3; _t$1164 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$1165 = n$8 val$2 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$1164rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- val$4|->{name:_t$1161rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1161|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$5 _t$1161 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$659initial:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$1161 = val$5; _t$1162 = val$4; _t$1163 = val$3; _t$1164 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$1165 = n$8 val$2 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$1164rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- val$5|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$659initial:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$1161 = val$5; _t$1162 = val$4; _t$1163 = val$3; _t$1164 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$1165 = n$8 val$2 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$1164rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- [FRAME TYPING: val$5: java.lang.String( sub ) val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Result of Abduction SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$659initial:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$1161 = val$5; _t$1162 = val$4; _t$1163 = val$3; _t$1164 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$1165 = n$8 val$2 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$1164rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- val$5 != null; val$5 != ""; val$4 != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$5|->{}rearrange:(z)394:java.lang.String( sub ); val$4|->{name:val$5rearrange:(z)15}rearrange:394:java.lang.Class( sub ); val$3|->{clazz:val$4rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:%path%n8_org.junit.runners.ParentRunner.childrenLock$-3rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: val$5: java.lang.String( sub ) val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE WARNING: Missing fields hpred has non-footprint vars: n$8|->{childrenLock:%path%n8_org.junit.runners.ParentRunner.childrenLock$-3rearrange:531}formal(z):org.junit.runners.ParentRunner( sub ) Implication error: missing_sigma not empty in re-execution EXECUTING SPEC 5/5 ACTUAL PRECONDITION = val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$659initial:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$1170 != null; _t$1170 != ""; _t$1171 != null; _t$1173 != null ; this|callee = _t$1174formal:org.junit.runners.ParentRunner*( sub ) ; _t$1170|->{}rearrange:(z)394:java.lang.String( sub ); _t$1171|->{name:_t$1170rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1172|->{clazz:_t$1171rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1173|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:_t$1173rearrange:(z)530, testClass:_t$1172rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$1170 != null; _t$1170 != ""; _t$1171 != null; _t$1173 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$1175); MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(return|callee); UND < Annotation[] Class.getAnnotations() > :216(_t$1177); RET < Annotation[] TestClass.getAnnotations() > (_t$1177); RET < List ParentRunner.getFilteredChildren() > (_t$1173); RET < Class TestClass.getJavaClass() > (_t$1171); RET < String Class.getName() > (_t$1170); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1177); RET < TestClass ParentRunner.getTestClass() > (_t$1172) ; return|callee = _t$1176update:403:org.junit.runner.Description* ; _t$1175|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; return|callee|->{fAnnotations:_t$1177update:397, fChildren:_t$1175update:(z)397, fDisplayName:_t$1170update:397, fTestClass:_t$1171update:397, fUniqueId:_t$1170update:397}formal(z):org.junit.runner.Description; _t$1170|->{}formal:java.lang.String( sub ); _t$1171|->{name:_t$1170formal(z)}formal(z):java.lang.Class( sub ); _t$1172|->{clazz:_t$1171formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$1173|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$1173formal(z), testClass:_t$1172formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$1170 != null; _t$1170 != ""; _t$1171 != null; _t$1173 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$1176); RET < Class TestClass.getJavaClass() > (_t$1171); RET < String Class.getName() > (_t$1170); RET < TestClass ParentRunner.getTestClass() > (_t$1172) ; return|callee = EXN _t$1176update:397:org.junit.runner.Description* ; _t$1176|->{}alloc:java.lang.IllegalArgumentException; _t$1170|->{}formal:java.lang.String( sub ); _t$1171|->{name:_t$1170formal(z)}formal(z):java.lang.Class( sub ); _t$1172|->{clazz:_t$1171formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$1173|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$1173formal(z), testClass:_t$1172formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268(val$7); RET < boolean List.isEmpty() > (0) pi2: _t$1170 != null; _t$1170 != ""; _t$1171 != null; _t$1173 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$659initial:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$1174formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{filteredChildren:_t$1173rearrange:(z)530, testClass:_t$1172rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$1173|->{}rearrange:400:java.util.List( sub ); _t$1172|->{clazz:_t$1171rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1171|->{name:_t$1170rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1170|->{}rearrange:(z)394:java.lang.String( sub ) do_imply n$8 _t$1174 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$659initial:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$1174 = n$8] |- n$8|->{filteredChildren:_t$1173rearrange:(z)530, testClass:_t$1172rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$1173|->{}rearrange:400:java.util.List( sub ); _t$1172|->{clazz:_t$1171rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1171|->{name:_t$1170rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1170|->{}rearrange:(z)394:java.lang.String( sub ) do_imply val$2 _t$1173 do_imply val$3 _t$1172 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$659initial:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$1172 = val$3; _t$1173 = val$2; _t$1174 = n$8] |- val$2|->{}rearrange:400:java.util.List( sub ); val$3|->{clazz:_t$1171rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1171|->{name:_t$1170rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1170|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$4 _t$1171 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$659initial:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$1171 = val$4; _t$1172 = val$3; _t$1173 = val$2; _t$1174 = n$8] |- val$2|->{}rearrange:400:java.util.List( sub ); val$4|->{name:_t$1170rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1170|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$659initial:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ) [SUB: val$1 = n$8; _t$1171 = val$4; _t$1172 = val$3; _t$1173 = val$2; _t$1174 = n$8] |- val$4|->{name:_t$1170rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1170|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$5 _t$1170 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$659initial:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ) [SUB: val$1 = n$8; _t$1170 = val$5; _t$1171 = val$4; _t$1172 = val$3; _t$1173 = val$2; _t$1174 = n$8] |- val$5|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$4: java.lang.Class( sub ) val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$659initial:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ) [SUB: val$1 = n$8; _t$1170 = val$5; _t$1171 = val$4; _t$1172 = val$3; _t$1173 = val$2; _t$1174 = n$8] |- [FRAME TYPING: val$5: java.lang.String( sub ) val$4: java.lang.Class( sub ) val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Result of Abduction SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$659initial:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$1170 = val$5; _t$1171 = val$4; _t$1172 = val$3; _t$1173 = val$2; _t$1174 = n$8] |- val$5 != null; val$5 != ""; val$4 != null; val$2 != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$5|->{}rearrange:(z)394:java.lang.String( sub ); val$4|->{name:val$5rearrange:(z)15}rearrange:394:java.lang.Class( sub ); val$3|->{clazz:val$4rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); val$2|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:val$2rearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: val$5: java.lang.String( sub ) val$4: java.lang.Class( sub ) val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE in vpath_find exp:_t$1175 vpath_find: cannot find _t$1175 in vpath_find exp:_t$1176 vpath_find: cannot find _t$1176 in vpath_find exp:_t$1176 vpath_find: cannot find _t$1176 New footprint: Frame fld: Frame typ: val$5: java.lang.String( sub ) val$4: java.lang.Class( sub ) val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) Missing fld: Instantiated frame: val$7|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); &classRules|->val$7update:268:java.util.List*; &$RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->val$7formal:java.util.List*( sub ); &$irvar0|->0nullify:void; &return|->n$659initial:org.junit.runners.model.Statement*; &$T0_31|->n$660initial:void; &$irvar1|->n$661initial:void; &statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &old_statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &$irvar2|->n$662initial:void; &this|->n$8formal:org.junit.runners.ParentRunner*( sub ); &old_this|->n$8formal:org.junit.runners.ParentRunner*( sub ) Instantiated post: PROP 1 of 2: val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1175); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(return|callee); UND < Annotation[] Class.getAnnotations() > :216(_t$1177); RET < Annotation[] TestClass.getAnnotations() > (_t$1177); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1177); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = _t$1176update:270:org.junit.runner.Description* ; _t$1175|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; return|callee|->{fAnnotations:_t$1177update:270, fChildren:_t$1175update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$8|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1176); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = EXN _t$1176update:270:org.junit.runner.Description* ; _t$1176|->{}alloc:java.lang.IllegalArgumentException; val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$8|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** RESULTS FUNCTION CALL ******* PROP 1 of 2: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$0); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$0); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$659initial:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$1|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$10|->{fAnnotations:_t$0update:270, fChildren:_t$1update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** END RESULTS FUNCTION CALL ******* pvar: classRules found error in dereference spec_pre: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1175); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$1177); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1177); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$659initial:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$1175|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$10|->{fAnnotations:_t$1177update:270, fChildren:_t$1175update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) exp val$7 desc: pvar: classRules found error in dereference spec_pre: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1176); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$1176update:270:org.junit.runners.model.Statement*; $T0_31 = n$660initial:void; $irvar1 = n$661initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$662initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$1176|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) exp val$7 desc: Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 2: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$5); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$4); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$4); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$5|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$10|->{fAnnotations:_t$4update:270, fChildren:_t$5update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (n$10); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction *&$irvar1:org.junit.runner.Description*=n$10 [line 270] in vpath_find exp:n$663 vpath_find: cannot find n$663 in vpath_find exp:n$10 vpath_find: cannot find n$10 .... Rearrangement Start .... Exp: &$irvar1 Prop: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$663); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(n$664); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (n$664); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$665initial:org.junit.runners.model.Statement*; $T0_31 = n$666initial:void; $irvar1 = n$667initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$668initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$663|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:n$664update:270, fChildren:n$663update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 1: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$1); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$4initial:org.junit.runners.model.Statement*; $T0_31 = _t$3initial:void; $irvar1 = n$10update:270:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$2|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); $irvar1|->{fAnnotations:_t$1update:270, fChildren:_t$2update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Skipping instr *&$irvar1:org.junit.runner.Description*=n$10 [line 270] due to exception Instruction NULLIFY(&this); [line 270] in vpath_find exp:_t$2 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$2 in vpath_find exp:n$10 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find n$10 Instruction Returns PROP 1 of 1: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$1); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$4initial:org.junit.runners.model.Statement*; $T0_31 = _t$3initial:void; $irvar1 = n$10update:270:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$2|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); $irvar1|->{fAnnotations:_t$1update:270, fChildren:_t$2update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction NULLIFY(&this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (n$10); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction EXIT_SCOPE(_,n$8,n$10,this); [line 270] in vpath_find exp:_t$2 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$2 in vpath_find exp:n$10 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find n$10 Instruction Returns PROP 1 of 1: (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$2); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$5initial:org.junit.runners.model.Statement*; $T0_31 = _t$4initial:void; $irvar1 = _t$1update:270:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$3|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $irvar1|->{fAnnotations:_t$2update:270, fChildren:_t$3update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction EXIT_SCOPE(_,n$8,n$10,this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (_t$4); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) .... After Symbolic Execution .... PROP 1 of 2: (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$2); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$5initial:org.junit.runners.model.Statement*; $T0_31 = _t$4initial:void; $irvar1 = _t$1update:270:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$3|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $irvar1|->{fAnnotations:_t$2update:270, fChildren:_t$3update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (_t$4); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub )
node10#session89(270) biabduction **** [RE:Pending] Statement ParentRunner.withClassRules(RunBefores) Node: 10, Procedure: Statement ParentRunner.withClassRules(RunBefores), Todo: 1 **** PROP 1 of 1: (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = val$1formal:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) .... Instructions: .... n$8=*&this:org.junit.runners.ParentRunner* [line 270]; _=*n$8:org.junit.runners.ParentRunner [line 270]; n$10=_fun_Description ParentRunner.getDescription()(n$8:org.junit.runners.ParentRunner*) virtual [line 270]; *&$irvar1:org.junit.runner.Description*=n$10 [line 270]; NULLIFY(&this); [line 270]; EXIT_SCOPE(_,n$8,n$10,this); [line 270]; Processing prop 1/1 Instruction n$8=*&this:org.junit.runners.ParentRunner* [line 270] .... Rearrangement Start .... Exp: &this Prop: (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$790initial:org.junit.runners.model.Statement*; $T0_31 = n$791initial:void; $irvar1 = n$792initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$793initial:void; this = val$1formal:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 1: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction _=*n$8:org.junit.runners.ParentRunner [line 270] .... Rearrangement Start .... Exp: n$8 Prop: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$794initial:org.junit.runners.model.Statement*; $T0_31 = n$795initial:void; $irvar1 = n$796initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$797initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 1: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction n$10=_fun_Description ParentRunner.getDescription()(n$8:org.junit.runners.ParentRunner*) virtual [line 270] Found 5 specs for function org.junit.runners.ParentRunner.getDescription():org.junit.runner.Description START EXECUTING SPECS FOR org.junit.runners.ParentRunner.getDescription():org.junit.runner.Description from state val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$798initial:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) EXECUTING SPEC 1/5 ACTUAL PRECONDITION = val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$798initial:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: this|callee = _t$1396formal:org.junit.runners.ParentRunner*( sub ) ; _t$1394|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1395|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$1395rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$1394rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$1397); MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(return|callee); MEMna < Annotation[] ParentRunner.getRunnerAnnotations():395 > {vpath: }(_t$1398); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$1400); LOCKED(_t$1395); RET < Annotation[] TestClass.getAnnotations() > (_t$1398); RET < List ParentRunner.getFilteredChildren() > (_t$1400); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1398); RET < TestClass ParentRunner.getTestClass() > (_t$1394) ; return|callee = _t$1399update:403:org.junit.runner.Description* ; _t$1397|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$1398|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$1398update:395, fChildren:_t$1397update:(z)395, fDisplayName:"null"update:395, fTestClass:nullupdate:395, fUniqueId:"null"update:395}formal(z):org.junit.runner.Description; _t$1394|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$1395|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$1395formal, filteredChildren:_t$1400update:(z)400, testClass:_t$1394formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$1400); RET < TestClass ParentRunner.getTestClass() > (_t$1394) ; return|callee = EXN _t$1400update:395:org.junit.runner.Description* ; _t$1400|->{}alloc:java.lang.IllegalArgumentException; _t$1394|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$1395|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$1395formal, filteredChildren:nullformal(z), testClass:_t$1394formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268(val$7); RET < boolean List.isEmpty() > (0) pi2: returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$798initial:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$1396formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{childrenLock:_t$1395rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$1394rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$1395|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$1394|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply n$8 _t$1396 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$798initial:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$1396 = n$8] |- n$8|->{childrenLock:_t$1395rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$1394rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$1395|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$1394|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply val$2 null do_imply val$3 _t$1394 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$798initial:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$1394 = val$3; _t$1395 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$1396 = n$8 val$2 = null MISSING FLD: n$8|->{childrenLock:_t$1395rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$4 null Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$798initial:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$1394 = val$3; _t$1395 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$1396 = n$8 val$4 = null; val$2 = null MISSING FLD: n$8|->{childrenLock:_t$1395rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$798initial:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$1394 = val$3; _t$1395 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$1396 = n$8 val$4 = null; val$2 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$1395rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Result of Abduction SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$798initial:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$1394 = val$3; _t$1395 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$1396 = n$8 val$4 = null; val$2 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$1395rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:%path%n8_org.junit.runners.ParentRunner.childrenLock$-3rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE WARNING: Missing fields hpred has non-footprint vars: n$8|->{childrenLock:%path%n8_org.junit.runners.ParentRunner.childrenLock$-3rearrange:531}formal(z):org.junit.runners.ParentRunner( sub ) Implication error: missing_sigma not empty in re-execution EXECUTING SPEC 2/5 ACTUAL PRECONDITION = val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$798initial:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$1402 != null ; this|callee = _t$1403formal:org.junit.runners.ParentRunner*( sub ) ; _t$1401|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1402|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:_t$1402rearrange:(z)530, testClass:_t$1401rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$1402 != null; MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$1404); MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(return|callee); MEMna < Annotation[] ParentRunner.getRunnerAnnotations():395 > {vpath: }(_t$1405); RET < Annotation[] TestClass.getAnnotations() > (_t$1405); RET < List ParentRunner.getFilteredChildren() > (_t$1402); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1405); RET < TestClass ParentRunner.getTestClass() > (_t$1401) ; return|callee = _t$1406update:403:org.junit.runner.Description* ; _t$1404|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$1405|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$1405update:395, fChildren:_t$1404update:(z)395, fDisplayName:"null"update:395, fTestClass:nullupdate:395, fUniqueId:"null"update:395}formal(z):org.junit.runner.Description; _t$1401|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$1402|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$1402formal(z), testClass:_t$1401formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$1402 != null; MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$1406); RET < TestClass ParentRunner.getTestClass() > (_t$1401) ; return|callee = EXN _t$1406update:395:org.junit.runner.Description* ; _t$1406|->{}alloc:java.lang.IllegalArgumentException; _t$1401|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$1402|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$1402formal(z), testClass:_t$1401formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268(val$7); RET < boolean List.isEmpty() > (0) pi2: _t$1402 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$798initial:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$1403formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{filteredChildren:_t$1402rearrange:(z)530, testClass:_t$1401rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$1402|->{}rearrange:400:java.util.List( sub ); _t$1401|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply n$8 _t$1403 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$798initial:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$1403 = n$8] |- n$8|->{filteredChildren:_t$1402rearrange:(z)530, testClass:_t$1401rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$1402|->{}rearrange:400:java.util.List( sub ); _t$1401|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply val$2 _t$1402 do_imply val$3 _t$1401 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$798initial:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$1401 = val$3; _t$1402 = val$2; _t$1403 = n$8] |- val$2|->{}rearrange:400:java.util.List( sub ); val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$4 null Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$798initial:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$1401 = val$3; _t$1402 = val$2; _t$1403 = n$8 val$4 = null] |- val$2|->{}rearrange:400:java.util.List( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$798initial:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ) [SUB: val$1 = n$8; _t$1401 = val$3; _t$1402 = val$2; _t$1403 = n$8 val$4 = null] |- [FRAME TYPING: val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Result of Abduction SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$798initial:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$1401 = val$3; _t$1402 = val$2; _t$1403 = n$8 val$4 = null] |- val$2 != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); val$2|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:val$2rearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE in vpath_find exp:_t$1404 vpath_find: cannot find _t$1404 in vpath_find exp:_t$1406 vpath_find: cannot find _t$1406 in vpath_find exp:_t$1405 vpath_find: cannot find _t$1405 in vpath_find exp:_t$1406 vpath_find: cannot find _t$1406 New footprint: val$4 = null Frame fld: Frame typ: val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) Missing fld: Instantiated frame: val$7|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); &classRules|->val$7update:268:java.util.List*; &$RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->val$7formal:java.util.List*( sub ); &$irvar0|->0nullify:void; &return|->n$798initial:org.junit.runners.model.Statement*; &$T0_31|->n$799initial:void; &$irvar1|->n$800initial:void; &statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &old_statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &$irvar2|->n$801initial:void; &this|->n$8formal:org.junit.runners.ParentRunner*( sub ); &old_this|->n$8formal:org.junit.runners.ParentRunner*( sub ) Instantiated post: PROP 1 of 2: val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1404); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(return|callee); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$1405); RET < Annotation[] TestClass.getAnnotations() > (_t$1405); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1405); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = _t$1406update:270:org.junit.runner.Description* ; _t$1404|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$1405|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$1405update:270, fChildren:_t$1404update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$8|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1406); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = EXN _t$1406update:270:org.junit.runner.Description* ; _t$1406|->{}alloc:java.lang.IllegalArgumentException; val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$8|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** RESULTS FUNCTION CALL ******* PROP 1 of 2: val$1 = old_this; val$4 = null ; (val$8 <= -1); val$5 != null; val$5 != ""; val$2 != null; null != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$0); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$798initial:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$1|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$0|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$10|->{fAnnotations:_t$0update:270, fChildren:_t$1update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); null|->{name:val$5formal(z)}formal:java.lang.Class( sub ) PROP 2 of 2: val$1 = old_this; val$4 = null ; (val$8 <= -1); val$5 != null; val$5 != ""; val$2 != null; null != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); null|->{name:val$5formal(z)}formal:java.lang.Class( sub ) ***** END RESULTS FUNCTION CALL ******* pvar: classRules found error in dereference spec_pre: val$1 = old_this; val$4 = null ; (val$8 <= -1); val$5 != null; val$5 != ""; val$2 != null; null != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1404); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$1405); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1405); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$798initial:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$1405|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; _t$1404|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$10|->{fAnnotations:_t$1405update:270, fChildren:_t$1404update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); null|->{name:val$5formal(z)}formal:java.lang.Class( sub ) exp val$7 desc: pvar: classRules found error in dereference spec_pre: val$1 = old_this; val$4 = null ; (val$8 <= -1); val$5 != null; val$5 != ""; val$2 != null; null != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1406); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$1406update:270:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$1406|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); null|->{name:val$5formal(z)}formal:java.lang.Class( sub ) exp val$7 desc: Prover.check_inconsistency_base: inconsistency reason [Some 0] Prover.check_inconsistency_base: inconsistency reason [Some 0] Prover.check_inconsistency_base: inconsistency reason [Some 0] EXECUTING SPEC 3/5 ACTUAL PRECONDITION = val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$798initial:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$1407 != null ; this|callee = _t$1409formal:org.junit.runners.ParentRunner*( sub ) ; _t$1407|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1408|->{clazz:_t$1407rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:_t$1408rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) POST 1 of 1: _t$1407 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$1410); RET < Class TestClass.getJavaClass() > (_t$1407); RET < TestClass ParentRunner.getTestClass() > (_t$1408) ; return|callee = EXN _t$1410update:397:org.junit.runner.Description* ; _t$1410|->{}alloc:java.lang.IllegalArgumentException; _t$1407|->{name:""formal(z)}formal(z):java.lang.Class( sub ); _t$1408|->{clazz:_t$1407formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:_t$1408formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268(val$7); RET < boolean List.isEmpty() > (0) pi2: _t$1407 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$798initial:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$1409formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{testClass:_t$1408rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$1408|->{clazz:_t$1407rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1407|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$798initial:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$1409formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{testClass:_t$1408rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$1408|->{clazz:_t$1407rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1407|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: ""|->{count:_t$1428none, hash:_t$1429none, offset:_t$1430none, value:_t$1431none}none:java.lang.String] [FRAME TYPING: "": java.lang.String ] do_imply n$8 _t$1409 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$798initial:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$1409 = n$8] |- n$8|->{testClass:_t$1408rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$1408|->{clazz:_t$1407rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1407|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: ""|->{count:_t$1428none, hash:_t$1429none, offset:_t$1430none, value:_t$1431none}none:java.lang.String] [FRAME TYPING: "": java.lang.String ] do_imply val$3 _t$1408 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$798initial:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$1408 = val$3; _t$1409 = n$8] |- val$3|->{clazz:_t$1407rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1407|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: n$8|->{filteredChildren:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$1428none, hash:_t$1429none, offset:_t$1430none, value:_t$1431none}none:java.lang.String] [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] do_imply val$4 _t$1407 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$798initial:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$1407 = val$4; _t$1408 = val$3; _t$1409 = n$8] |- val$4|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: n$8|->{filteredChildren:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$1428none, hash:_t$1429none, offset:_t$1430none, value:_t$1431none}none:java.lang.String] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] do_imply val$5 "" Final Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$798initial:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$1407 = val$4; _t$1408 = val$3; _t$1409 = n$8 val$5 = ""] |- [FRAME FLD: n$8|->{filteredChildren:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$1428none, hash:_t$1429none, offset:_t$1430none, value:_t$1431none}none:java.lang.String] [FRAME TYPING: val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] Result of Abduction SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$798initial:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$1407 = val$4; _t$1408 = val$3; _t$1409 = n$8 val$5 = ""] |- val$4 != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$4|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); val$3|->{clazz:val$4rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:val$3rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME FLD: n$8|->{filteredChildren:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$1428none, hash:_t$1429none, offset:_t$1430none, value:_t$1431none}none:java.lang.String] [FRAME TYPING: val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] returning TRUE in vpath_find exp:_t$1410 vpath_find: cannot find _t$1410 New footprint: val$5 = "" Frame fld: n$8|->{filteredChildren:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$1428none, hash:_t$1429none, offset:_t$1430none, value:_t$1431none}none:java.lang.String Frame typ: val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String Missing fld: Instantiated frame: val$7|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$2|->{}formal:java.util.List( sub ); &classRules|->val$7update:268:java.util.List*; &$RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->val$7formal:java.util.List*( sub ); &$irvar0|->0nullify:void; &return|->n$798initial:org.junit.runners.model.Statement*; &$T0_31|->n$799initial:void; &$irvar1|->n$800initial:void; &statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &old_statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &$irvar2|->n$801initial:void; &this|->n$8formal:org.junit.runners.ParentRunner*( sub ); &old_this|->n$8formal:org.junit.runners.ParentRunner*( sub ) Instantiated post: PROP 1 of 1: val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1410); RET < Class TestClass.getJavaClass() > (val$4); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = EXN _t$1410update:270:org.junit.runner.Description* ; _t$1410|->{}alloc:java.lang.IllegalArgumentException; val$4|->{name:""formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); n$8|->{testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** RESULTS FUNCTION CALL ******* PROP 1 of 1: val$1 = old_this; val$5 = "" ; (val$8 <= -1); val$4 != null; val$2 != null; null != ""; "" != ""; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Class TestClass.getJavaClass() > (val$4); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$4|->{name:""formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{}formal(z):java.lang.String( sub ) ***** END RESULTS FUNCTION CALL ******* pvar: classRules found error in dereference spec_pre: val$1 = old_this; val$5 = "" ; (val$8 <= -1); val$4 != null; val$2 != null; null != ""; "" != ""; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1410); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Class TestClass.getJavaClass() > (val$4); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$1410update:270:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$1410|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$4|->{name:""formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{}formal(z):java.lang.String( sub ) exp val$7 desc: Prover.check_inconsistency_base: inconsistency reason [Some 2] Prover.check_inconsistency_base: inconsistency reason [Some 2] EXECUTING SPEC 4/5 ACTUAL PRECONDITION = val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$798initial:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$1411 != null; _t$1411 != ""; _t$1412 != null ; this|callee = _t$1415formal:org.junit.runners.ParentRunner*( sub ) ; _t$1411|->{}rearrange:(z)394:java.lang.String( sub ); _t$1412|->{name:_t$1411rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1413|->{clazz:_t$1412rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1414|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$1414rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$1413rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$1411 != null; _t$1411 != ""; _t$1412 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$1416); MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(return|callee); UND < Annotation[] Class.getAnnotations() > :216(_t$1418); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$1419); LOCKED(_t$1414); RET < Annotation[] TestClass.getAnnotations() > (_t$1418); RET < List ParentRunner.getFilteredChildren() > (_t$1419); RET < Class TestClass.getJavaClass() > (_t$1412); RET < String Class.getName() > (_t$1411); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1418); RET < TestClass ParentRunner.getTestClass() > (_t$1413) ; return|callee = _t$1417update:403:org.junit.runner.Description* ; _t$1416|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; return|callee|->{fAnnotations:_t$1418update:397, fChildren:_t$1416update:(z)397, fDisplayName:_t$1411update:397, fTestClass:_t$1412update:397, fUniqueId:_t$1411update:397}formal(z):org.junit.runner.Description; _t$1411|->{}formal:java.lang.String( sub ); _t$1412|->{name:_t$1411formal(z)}formal(z):java.lang.Class( sub ); _t$1413|->{clazz:_t$1412formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$1414|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$1414formal, filteredChildren:_t$1419update:(z)400, testClass:_t$1413formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$1411 != null; _t$1411 != ""; _t$1412 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$1419); RET < Class TestClass.getJavaClass() > (_t$1412); RET < String Class.getName() > (_t$1411); RET < TestClass ParentRunner.getTestClass() > (_t$1413) ; return|callee = EXN _t$1419update:397:org.junit.runner.Description* ; _t$1419|->{}alloc:java.lang.IllegalArgumentException; _t$1411|->{}formal:java.lang.String( sub ); _t$1412|->{name:_t$1411formal(z)}formal(z):java.lang.Class( sub ); _t$1413|->{clazz:_t$1412formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$1414|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$1414formal, filteredChildren:nullformal(z), testClass:_t$1413formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268(val$7); RET < boolean List.isEmpty() > (0) pi2: _t$1411 != null; _t$1411 != ""; _t$1412 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$798initial:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$1415formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{childrenLock:_t$1414rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$1413rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$1414|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$1413|->{clazz:_t$1412rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1412|->{name:_t$1411rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1411|->{}rearrange:(z)394:java.lang.String( sub ) do_imply n$8 _t$1415 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$798initial:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$1415 = n$8] |- n$8|->{childrenLock:_t$1414rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$1413rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$1414|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$1413|->{clazz:_t$1412rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1412|->{name:_t$1411rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1411|->{}rearrange:(z)394:java.lang.String( sub ) do_imply val$2 null do_imply val$3 _t$1413 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$798initial:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$1413 = val$3; _t$1414 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$1415 = n$8 val$2 = null MISSING FLD: n$8|->{childrenLock:_t$1414rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); val$3|->{clazz:_t$1412rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1412|->{name:_t$1411rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1411|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$4 _t$1412 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$798initial:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$1412 = val$4; _t$1413 = val$3; _t$1414 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$1415 = n$8 val$2 = null MISSING FLD: n$8|->{childrenLock:_t$1414rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); val$4|->{name:_t$1411rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1411|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$798initial:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$1412 = val$4; _t$1413 = val$3; _t$1414 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$1415 = n$8 val$2 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$1414rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- val$4|->{name:_t$1411rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1411|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$5 _t$1411 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$798initial:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$1411 = val$5; _t$1412 = val$4; _t$1413 = val$3; _t$1414 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$1415 = n$8 val$2 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$1414rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- val$5|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$798initial:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$1411 = val$5; _t$1412 = val$4; _t$1413 = val$3; _t$1414 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$1415 = n$8 val$2 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$1414rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- [FRAME TYPING: val$5: java.lang.String( sub ) val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Result of Abduction SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$798initial:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$1411 = val$5; _t$1412 = val$4; _t$1413 = val$3; _t$1414 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$1415 = n$8 val$2 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$1414rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- val$5 != null; val$5 != ""; val$4 != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$5|->{}rearrange:(z)394:java.lang.String( sub ); val$4|->{name:val$5rearrange:(z)15}rearrange:394:java.lang.Class( sub ); val$3|->{clazz:val$4rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:%path%n8_org.junit.runners.ParentRunner.childrenLock$-3rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: val$5: java.lang.String( sub ) val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE WARNING: Missing fields hpred has non-footprint vars: n$8|->{childrenLock:%path%n8_org.junit.runners.ParentRunner.childrenLock$-3rearrange:531}formal(z):org.junit.runners.ParentRunner( sub ) Implication error: missing_sigma not empty in re-execution EXECUTING SPEC 5/5 ACTUAL PRECONDITION = val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$798initial:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$1420 != null; _t$1420 != ""; _t$1421 != null; _t$1423 != null ; this|callee = _t$1424formal:org.junit.runners.ParentRunner*( sub ) ; _t$1420|->{}rearrange:(z)394:java.lang.String( sub ); _t$1421|->{name:_t$1420rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1422|->{clazz:_t$1421rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1423|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:_t$1423rearrange:(z)530, testClass:_t$1422rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$1420 != null; _t$1420 != ""; _t$1421 != null; _t$1423 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$1425); MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(return|callee); UND < Annotation[] Class.getAnnotations() > :216(_t$1427); RET < Annotation[] TestClass.getAnnotations() > (_t$1427); RET < List ParentRunner.getFilteredChildren() > (_t$1423); RET < Class TestClass.getJavaClass() > (_t$1421); RET < String Class.getName() > (_t$1420); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1427); RET < TestClass ParentRunner.getTestClass() > (_t$1422) ; return|callee = _t$1426update:403:org.junit.runner.Description* ; _t$1425|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; return|callee|->{fAnnotations:_t$1427update:397, fChildren:_t$1425update:(z)397, fDisplayName:_t$1420update:397, fTestClass:_t$1421update:397, fUniqueId:_t$1420update:397}formal(z):org.junit.runner.Description; _t$1420|->{}formal:java.lang.String( sub ); _t$1421|->{name:_t$1420formal(z)}formal(z):java.lang.Class( sub ); _t$1422|->{clazz:_t$1421formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$1423|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$1423formal(z), testClass:_t$1422formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$1420 != null; _t$1420 != ""; _t$1421 != null; _t$1423 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$1426); RET < Class TestClass.getJavaClass() > (_t$1421); RET < String Class.getName() > (_t$1420); RET < TestClass ParentRunner.getTestClass() > (_t$1422) ; return|callee = EXN _t$1426update:397:org.junit.runner.Description* ; _t$1426|->{}alloc:java.lang.IllegalArgumentException; _t$1420|->{}formal:java.lang.String( sub ); _t$1421|->{name:_t$1420formal(z)}formal(z):java.lang.Class( sub ); _t$1422|->{clazz:_t$1421formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$1423|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$1423formal(z), testClass:_t$1422formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268(val$7); RET < boolean List.isEmpty() > (0) pi2: _t$1420 != null; _t$1420 != ""; _t$1421 != null; _t$1423 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$798initial:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$1424formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{filteredChildren:_t$1423rearrange:(z)530, testClass:_t$1422rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$1423|->{}rearrange:400:java.util.List( sub ); _t$1422|->{clazz:_t$1421rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1421|->{name:_t$1420rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1420|->{}rearrange:(z)394:java.lang.String( sub ) do_imply n$8 _t$1424 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$798initial:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$1424 = n$8] |- n$8|->{filteredChildren:_t$1423rearrange:(z)530, testClass:_t$1422rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$1423|->{}rearrange:400:java.util.List( sub ); _t$1422|->{clazz:_t$1421rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1421|->{name:_t$1420rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1420|->{}rearrange:(z)394:java.lang.String( sub ) do_imply val$2 _t$1423 do_imply val$3 _t$1422 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$798initial:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$1422 = val$3; _t$1423 = val$2; _t$1424 = n$8] |- val$2|->{}rearrange:400:java.util.List( sub ); val$3|->{clazz:_t$1421rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1421|->{name:_t$1420rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1420|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$4 _t$1421 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$798initial:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$1421 = val$4; _t$1422 = val$3; _t$1423 = val$2; _t$1424 = n$8] |- val$2|->{}rearrange:400:java.util.List( sub ); val$4|->{name:_t$1420rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1420|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$798initial:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ) [SUB: val$1 = n$8; _t$1421 = val$4; _t$1422 = val$3; _t$1423 = val$2; _t$1424 = n$8] |- val$4|->{name:_t$1420rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1420|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$5 _t$1420 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$798initial:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ) [SUB: val$1 = n$8; _t$1420 = val$5; _t$1421 = val$4; _t$1422 = val$3; _t$1423 = val$2; _t$1424 = n$8] |- val$5|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$4: java.lang.Class( sub ) val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$798initial:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [SUB: val$1 = n$8; _t$1420 = val$5; _t$1421 = val$4; _t$1422 = val$3; _t$1423 = val$2; _t$1424 = n$8] |- [FRAME TYPING: val$5: java.lang.String( sub ) val$4: java.lang.Class( sub ) val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Result of Abduction SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$798initial:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$1420 = val$5; _t$1421 = val$4; _t$1422 = val$3; _t$1423 = val$2; _t$1424 = n$8] |- val$5 != null; val$5 != ""; val$4 != null; val$2 != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$5|->{}rearrange:(z)394:java.lang.String( sub ); val$4|->{name:val$5rearrange:(z)15}rearrange:394:java.lang.Class( sub ); val$3|->{clazz:val$4rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); val$2|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:val$2rearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: val$5: java.lang.String( sub ) val$4: java.lang.Class( sub ) val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE in vpath_find exp:_t$1425 vpath_find: cannot find _t$1425 in vpath_find exp:_t$1426 vpath_find: cannot find _t$1426 in vpath_find exp:_t$1426 vpath_find: cannot find _t$1426 New footprint: Frame fld: Frame typ: val$5: java.lang.String( sub ) val$4: java.lang.Class( sub ) val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) Missing fld: Instantiated frame: val$7|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); &classRules|->val$7update:268:java.util.List*; &$RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->val$7formal:java.util.List*( sub ); &$irvar0|->0nullify:void; &return|->n$798initial:org.junit.runners.model.Statement*; &$T0_31|->n$799initial:void; &$irvar1|->n$800initial:void; &statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &old_statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &$irvar2|->n$801initial:void; &this|->n$8formal:org.junit.runners.ParentRunner*( sub ); &old_this|->n$8formal:org.junit.runners.ParentRunner*( sub ) Instantiated post: PROP 1 of 2: val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1425); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(return|callee); UND < Annotation[] Class.getAnnotations() > :216(_t$1427); RET < Annotation[] TestClass.getAnnotations() > (_t$1427); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1427); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = _t$1426update:270:org.junit.runner.Description* ; _t$1425|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; return|callee|->{fAnnotations:_t$1427update:270, fChildren:_t$1425update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$8|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1426); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = EXN _t$1426update:270:org.junit.runner.Description* ; _t$1426|->{}alloc:java.lang.IllegalArgumentException; val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$8|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** RESULTS FUNCTION CALL ******* PROP 1 of 2: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$0); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$0); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$798initial:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$1|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$10|->{fAnnotations:_t$0update:270, fChildren:_t$1update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** END RESULTS FUNCTION CALL ******* pvar: classRules found error in dereference spec_pre: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1425); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$1427); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1427); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$798initial:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$1425|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$10|->{fAnnotations:_t$1427update:270, fChildren:_t$1425update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) exp val$7 desc: pvar: classRules found error in dereference spec_pre: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1426); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$1426update:270:org.junit.runners.model.Statement*; $T0_31 = n$799initial:void; $irvar1 = n$800initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$801initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$1426|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) exp val$7 desc: Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 2: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$5); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$4); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$4); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$5|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$10|->{fAnnotations:_t$4update:270, fChildren:_t$5update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (n$10); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction *&$irvar1:org.junit.runner.Description*=n$10 [line 270] in vpath_find exp:n$802 vpath_find: cannot find n$802 in vpath_find exp:n$10 vpath_find: cannot find n$10 .... Rearrangement Start .... Exp: &$irvar1 Prop: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$802); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(n$803); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (n$803); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$804initial:org.junit.runners.model.Statement*; $T0_31 = n$805initial:void; $irvar1 = n$806initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$807initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$802|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:n$803update:270, fChildren:n$802update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 1: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$1); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$4initial:org.junit.runners.model.Statement*; $T0_31 = _t$3initial:void; $irvar1 = n$10update:270:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$2|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); $irvar1|->{fAnnotations:_t$1update:270, fChildren:_t$2update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Skipping instr *&$irvar1:org.junit.runner.Description*=n$10 [line 270] due to exception Instruction NULLIFY(&this); [line 270] in vpath_find exp:_t$2 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$2 in vpath_find exp:n$10 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find n$10 Instruction Returns PROP 1 of 1: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$1); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$4initial:org.junit.runners.model.Statement*; $T0_31 = _t$3initial:void; $irvar1 = n$10update:270:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$2|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); $irvar1|->{fAnnotations:_t$1update:270, fChildren:_t$2update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction NULLIFY(&this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (n$10); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction EXIT_SCOPE(_,n$8,n$10,this); [line 270] in vpath_find exp:_t$2 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$2 in vpath_find exp:n$10 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find n$10 Instruction Returns PROP 1 of 1: (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$2); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$5initial:org.junit.runners.model.Statement*; $T0_31 = _t$4initial:void; $irvar1 = _t$1update:270:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$3|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $irvar1|->{fAnnotations:_t$2update:270, fChildren:_t$3update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction EXIT_SCOPE(_,n$8,n$10,this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (_t$4); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) .... After Symbolic Execution .... PROP 1 of 2: (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$2); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$5initial:org.junit.runners.model.Statement*; $T0_31 = _t$4initial:void; $irvar1 = _t$1update:270:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$3|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $irvar1|->{fAnnotations:_t$2update:270, fChildren:_t$3update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (_t$4); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub )
node10#session104(270) biabduction **** [RE:Pending] Statement ParentRunner.withClassRules(RunBefores) Node: 10, Procedure: Statement ParentRunner.withClassRules(RunBefores), Todo: 1 **** PROP 1 of 1: (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = val$1formal:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) .... Instructions: .... n$8=*&this:org.junit.runners.ParentRunner* [line 270]; _=*n$8:org.junit.runners.ParentRunner [line 270]; n$10=_fun_Description ParentRunner.getDescription()(n$8:org.junit.runners.ParentRunner*) virtual [line 270]; *&$irvar1:org.junit.runner.Description*=n$10 [line 270]; NULLIFY(&this); [line 270]; EXIT_SCOPE(_,n$8,n$10,this); [line 270]; Processing prop 1/1 Instruction n$8=*&this:org.junit.runners.ParentRunner* [line 270] .... Rearrangement Start .... Exp: &this Prop: (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$938initial:org.junit.runners.model.Statement*; $T0_31 = n$939initial:void; $irvar1 = n$940initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$941initial:void; this = val$1formal:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 1: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction _=*n$8:org.junit.runners.ParentRunner [line 270] .... Rearrangement Start .... Exp: n$8 Prop: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$942initial:org.junit.runners.model.Statement*; $T0_31 = n$943initial:void; $irvar1 = n$944initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$945initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 1: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction n$10=_fun_Description ParentRunner.getDescription()(n$8:org.junit.runners.ParentRunner*) virtual [line 270] Found 5 specs for function org.junit.runners.ParentRunner.getDescription():org.junit.runner.Description START EXECUTING SPECS FOR org.junit.runners.ParentRunner.getDescription():org.junit.runner.Description from state val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$946initial:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) EXECUTING SPEC 1/5 ACTUAL PRECONDITION = val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$946initial:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: this|callee = _t$1664formal:org.junit.runners.ParentRunner*( sub ) ; _t$1662|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1663|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$1663rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$1662rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$1665); MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(return|callee); MEMna < Annotation[] ParentRunner.getRunnerAnnotations():395 > {vpath: }(_t$1666); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$1668); LOCKED(_t$1663); RET < Annotation[] TestClass.getAnnotations() > (_t$1666); RET < List ParentRunner.getFilteredChildren() > (_t$1668); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1666); RET < TestClass ParentRunner.getTestClass() > (_t$1662) ; return|callee = _t$1667update:403:org.junit.runner.Description* ; _t$1665|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$1666|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$1666update:395, fChildren:_t$1665update:(z)395, fDisplayName:"null"update:395, fTestClass:nullupdate:395, fUniqueId:"null"update:395}formal(z):org.junit.runner.Description; _t$1662|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$1663|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$1663formal, filteredChildren:_t$1668update:(z)400, testClass:_t$1662formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$1668); RET < TestClass ParentRunner.getTestClass() > (_t$1662) ; return|callee = EXN _t$1668update:395:org.junit.runner.Description* ; _t$1668|->{}alloc:java.lang.IllegalArgumentException; _t$1662|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$1663|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$1663formal, filteredChildren:nullformal(z), testClass:_t$1662formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268(val$7); RET < boolean List.isEmpty() > (0) pi2: returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$946initial:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$1664formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{childrenLock:_t$1663rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$1662rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$1663|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$1662|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply n$8 _t$1664 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$946initial:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$1664 = n$8] |- n$8|->{childrenLock:_t$1663rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$1662rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$1663|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$1662|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply val$2 _t$1663 do_imply null null do_imply val$3 _t$1662 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$946initial:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$1662 = val$3; _t$1663 = val$2; _t$1664 = n$8] |- val$2|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$4 null Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$946initial:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$1662 = val$3; _t$1663 = val$2; _t$1664 = n$8 val$4 = null] |- val$2|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$946initial:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ) [SUB: val$1 = n$8; _t$1662 = val$3; _t$1663 = val$2; _t$1664 = n$8 val$4 = null] |- [FRAME TYPING: val$2: java.util.concurrent.locks.Lock( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Result of Abduction SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$946initial:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$1662 = val$3; _t$1663 = val$2; _t$1664 = n$8 val$4 = null] |- this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); val$2|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:val$2rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: val$2: java.util.concurrent.locks.Lock( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE in vpath_find exp:_t$1665 vpath_find: cannot find _t$1665 in vpath_find exp:_t$1667 vpath_find: cannot find _t$1667 in vpath_find exp:_t$1666 vpath_find: cannot find _t$1666 in vpath_find exp:_t$1668 vpath_find: cannot find _t$1668 New footprint: val$4 = null Frame fld: Frame typ: val$2: java.util.concurrent.locks.Lock( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) Missing fld: Instantiated frame: val$7|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); &classRules|->val$7update:268:java.util.List*; &$RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->val$7formal:java.util.List*( sub ); &$irvar0|->0nullify:void; &return|->n$946initial:org.junit.runners.model.Statement*; &$T0_31|->n$947initial:void; &$irvar1|->n$948initial:void; &statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &old_statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &$irvar2|->n$949initial:void; &this|->n$8formal:org.junit.runners.ParentRunner*( sub ); &old_this|->n$8formal:org.junit.runners.ParentRunner*( sub ) Instantiated post: PROP 1 of 2: MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1665); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(return|callee); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$1666); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$1668); LOCKED(val$2); RET < Annotation[] TestClass.getAnnotations() > (_t$1666); RET < List ParentRunner.getFilteredChildren() > (_t$1668); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1666); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = _t$1667update:270:org.junit.runner.Description* ; _t$1665|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$1666|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$1666update:270, fChildren:_t$1665update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$8|->{childrenLock:val$2formal, filteredChildren:_t$1668update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1668); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = EXN _t$1668update:270:org.junit.runner.Description* ; _t$1668|->{}alloc:java.lang.IllegalArgumentException; val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$8|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** RESULTS FUNCTION CALL ******* PROP 1 of 2: val$1 = old_this; val$4 = null ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; null != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(val$2); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$946initial:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$2|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$1|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$10|->{fAnnotations:_t$1update:270, fChildren:_t$2update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; old_this|->{childrenLock:val$2formal, filteredChildren:_t$0update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); null|->{name:val$5formal(z)}formal:java.lang.Class( sub ) PROP 2 of 2: val$1 = old_this; val$4 = null ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; null != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); null|->{name:val$5formal(z)}formal:java.lang.Class( sub ) ***** END RESULTS FUNCTION CALL ******* pvar: classRules found error in dereference spec_pre: val$1 = old_this; val$4 = null ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; null != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1665); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$1666); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$1668); LOCKED(val$2); RET < List ParentRunner.getFilteredChildren() > (_t$1668); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1666); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$946initial:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$1666|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; _t$1665|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$10|->{fAnnotations:_t$1666update:270, fChildren:_t$1665update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; old_this|->{childrenLock:val$2formal, filteredChildren:_t$1668update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); null|->{name:val$5formal(z)}formal:java.lang.Class( sub ) exp val$7 desc: pvar: classRules found error in dereference spec_pre: val$1 = old_this; val$4 = null ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; null != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1668); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$1668update:270:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$1668|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); null|->{name:val$5formal(z)}formal:java.lang.Class( sub ) exp val$7 desc: Prover.check_inconsistency_base: inconsistency reason [Some 0] Prover.check_inconsistency_base: inconsistency reason [Some 0] Prover.check_inconsistency_base: inconsistency reason [Some 0] EXECUTING SPEC 2/5 ACTUAL PRECONDITION = val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$946initial:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$1670 != null ; this|callee = _t$1671formal:org.junit.runners.ParentRunner*( sub ) ; _t$1669|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1670|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:_t$1670rearrange:(z)530, testClass:_t$1669rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$1670 != null; MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$1672); MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(return|callee); MEMna < Annotation[] ParentRunner.getRunnerAnnotations():395 > {vpath: }(_t$1673); RET < Annotation[] TestClass.getAnnotations() > (_t$1673); RET < List ParentRunner.getFilteredChildren() > (_t$1670); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1673); RET < TestClass ParentRunner.getTestClass() > (_t$1669) ; return|callee = _t$1674update:403:org.junit.runner.Description* ; _t$1672|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$1673|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$1673update:395, fChildren:_t$1672update:(z)395, fDisplayName:"null"update:395, fTestClass:nullupdate:395, fUniqueId:"null"update:395}formal(z):org.junit.runner.Description; _t$1669|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$1670|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$1670formal(z), testClass:_t$1669formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$1670 != null; MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$1674); RET < TestClass ParentRunner.getTestClass() > (_t$1669) ; return|callee = EXN _t$1674update:395:org.junit.runner.Description* ; _t$1674|->{}alloc:java.lang.IllegalArgumentException; _t$1669|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$1670|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$1670formal(z), testClass:_t$1669formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268(val$7); RET < boolean List.isEmpty() > (0) pi2: _t$1670 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$946initial:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$1671formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{filteredChildren:_t$1670rearrange:(z)530, testClass:_t$1669rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$1670|->{}rearrange:400:java.util.List( sub ); _t$1669|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply n$8 _t$1671 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$946initial:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$1671 = n$8] |- n$8|->{filteredChildren:_t$1670rearrange:(z)530, testClass:_t$1669rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$1670|->{}rearrange:400:java.util.List( sub ); _t$1669|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply null _t$1670 do_imply val$3 _t$1669 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$946initial:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$1669 = val$3; _t$1670 = null; _t$1671 = n$8] |- null|->{}rearrange:400:java.util.List( sub ); val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$4 null Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$946initial:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$1669 = val$3; _t$1670 = null; _t$1671 = n$8 val$4 = null] |- null|->{}rearrange:400:java.util.List( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$946initial:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$1669 = val$3; _t$1670 = null; _t$1671 = n$8 val$4 = null* null|->{}rearrange:400:java.util.List( sub )] |- [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Result of Abduction SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$946initial:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$1669 = val$3; _t$1670 = null; _t$1671 = n$8 val$4 = null* null|->{}rearrange:400:java.util.List( sub )] |- null != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); null|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:nullrearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE Implication error: missing_sigma not empty in re-execution EXECUTING SPEC 3/5 ACTUAL PRECONDITION = val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$946initial:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$1675 != null ; this|callee = _t$1677formal:org.junit.runners.ParentRunner*( sub ) ; _t$1675|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1676|->{clazz:_t$1675rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:_t$1676rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) POST 1 of 1: _t$1675 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$1678); RET < Class TestClass.getJavaClass() > (_t$1675); RET < TestClass ParentRunner.getTestClass() > (_t$1676) ; return|callee = EXN _t$1678update:397:org.junit.runner.Description* ; _t$1678|->{}alloc:java.lang.IllegalArgumentException; _t$1675|->{name:""formal(z)}formal(z):java.lang.Class( sub ); _t$1676|->{clazz:_t$1675formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:_t$1676formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268(val$7); RET < boolean List.isEmpty() > (0) pi2: _t$1675 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$946initial:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$1677formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{testClass:_t$1676rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$1676|->{clazz:_t$1675rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1675|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$946initial:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$1677formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{testClass:_t$1676rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$1676|->{clazz:_t$1675rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1675|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: ""|->{count:_t$1696none, hash:_t$1697none, offset:_t$1698none, value:_t$1699none}none:java.lang.String] [FRAME TYPING: "": java.lang.String ] do_imply n$8 _t$1677 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$946initial:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$1677 = n$8] |- n$8|->{testClass:_t$1676rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$1676|->{clazz:_t$1675rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1675|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: ""|->{count:_t$1696none, hash:_t$1697none, offset:_t$1698none, value:_t$1699none}none:java.lang.String] [FRAME TYPING: "": java.lang.String ] do_imply val$3 _t$1676 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$946initial:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$1676 = val$3; _t$1677 = n$8] |- val$3|->{clazz:_t$1675rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1675|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal, filteredChildren:nullformal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$1696none, hash:_t$1697none, offset:_t$1698none, value:_t$1699none}none:java.lang.String] [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] do_imply val$4 _t$1675 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$946initial:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$1675 = val$4; _t$1676 = val$3; _t$1677 = n$8] |- val$4|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal, filteredChildren:nullformal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$1696none, hash:_t$1697none, offset:_t$1698none, value:_t$1699none}none:java.lang.String] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] do_imply val$5 "" Final Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$946initial:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$1675 = val$4; _t$1676 = val$3; _t$1677 = n$8 val$5 = ""] |- [FRAME FLD: n$8|->{childrenLock:val$2formal, filteredChildren:nullformal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$1696none, hash:_t$1697none, offset:_t$1698none, value:_t$1699none}none:java.lang.String] [FRAME TYPING: val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] Result of Abduction SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$946initial:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$1675 = val$4; _t$1676 = val$3; _t$1677 = n$8 val$5 = ""] |- val$4 != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$4|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); val$3|->{clazz:val$4rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:val$3rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal, filteredChildren:nullformal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$1696none, hash:_t$1697none, offset:_t$1698none, value:_t$1699none}none:java.lang.String] [FRAME TYPING: val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] returning TRUE in vpath_find exp:_t$1678 vpath_find: cannot find _t$1678 New footprint: val$5 = "" Frame fld: n$8|->{childrenLock:val$2formal, filteredChildren:nullformal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$1696none, hash:_t$1697none, offset:_t$1698none, value:_t$1699none}none:java.lang.String Frame typ: val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String Missing fld: Instantiated frame: val$7|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); &classRules|->val$7update:268:java.util.List*; &$RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->val$7formal:java.util.List*( sub ); &$irvar0|->0nullify:void; &return|->n$946initial:org.junit.runners.model.Statement*; &$T0_31|->n$947initial:void; &$irvar1|->n$948initial:void; &statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &old_statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &$irvar2|->n$949initial:void; &this|->n$8formal:org.junit.runners.ParentRunner*( sub ); &old_this|->n$8formal:org.junit.runners.ParentRunner*( sub ) Instantiated post: PROP 1 of 1: val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1678); RET < Class TestClass.getJavaClass() > (val$4); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = EXN _t$1678update:270:org.junit.runner.Description* ; _t$1678|->{}alloc:java.lang.IllegalArgumentException; val$4|->{name:""formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); n$8|->{testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** RESULTS FUNCTION CALL ******* PROP 1 of 1: val$1 = old_this; val$5 = "" ; (-1 < val$8); val$8 != 1; val$4 != null; null != ""; "" != ""; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Class TestClass.getJavaClass() > (val$4); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$4|->{name:""formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{}formal(z):java.lang.String( sub ) ***** END RESULTS FUNCTION CALL ******* pvar: classRules found error in dereference spec_pre: val$1 = old_this; val$5 = "" ; (-1 < val$8); val$8 != 1; val$4 != null; null != ""; "" != ""; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1678); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Class TestClass.getJavaClass() > (val$4); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$1678update:270:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$1678|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$4|->{name:""formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{}formal(z):java.lang.String( sub ) exp val$7 desc: Prover.check_inconsistency_base: inconsistency reason [Some 2] Prover.check_inconsistency_base: inconsistency reason [Some 2] EXECUTING SPEC 4/5 ACTUAL PRECONDITION = val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$946initial:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$1679 != null; _t$1679 != ""; _t$1680 != null ; this|callee = _t$1683formal:org.junit.runners.ParentRunner*( sub ) ; _t$1679|->{}rearrange:(z)394:java.lang.String( sub ); _t$1680|->{name:_t$1679rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1681|->{clazz:_t$1680rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1682|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$1682rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$1681rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$1679 != null; _t$1679 != ""; _t$1680 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$1684); MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(return|callee); UND < Annotation[] Class.getAnnotations() > :216(_t$1686); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$1687); LOCKED(_t$1682); RET < Annotation[] TestClass.getAnnotations() > (_t$1686); RET < List ParentRunner.getFilteredChildren() > (_t$1687); RET < Class TestClass.getJavaClass() > (_t$1680); RET < String Class.getName() > (_t$1679); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1686); RET < TestClass ParentRunner.getTestClass() > (_t$1681) ; return|callee = _t$1685update:403:org.junit.runner.Description* ; _t$1684|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; return|callee|->{fAnnotations:_t$1686update:397, fChildren:_t$1684update:(z)397, fDisplayName:_t$1679update:397, fTestClass:_t$1680update:397, fUniqueId:_t$1679update:397}formal(z):org.junit.runner.Description; _t$1679|->{}formal:java.lang.String( sub ); _t$1680|->{name:_t$1679formal(z)}formal(z):java.lang.Class( sub ); _t$1681|->{clazz:_t$1680formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$1682|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$1682formal, filteredChildren:_t$1687update:(z)400, testClass:_t$1681formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$1679 != null; _t$1679 != ""; _t$1680 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$1687); RET < Class TestClass.getJavaClass() > (_t$1680); RET < String Class.getName() > (_t$1679); RET < TestClass ParentRunner.getTestClass() > (_t$1681) ; return|callee = EXN _t$1687update:397:org.junit.runner.Description* ; _t$1687|->{}alloc:java.lang.IllegalArgumentException; _t$1679|->{}formal:java.lang.String( sub ); _t$1680|->{name:_t$1679formal(z)}formal(z):java.lang.Class( sub ); _t$1681|->{clazz:_t$1680formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$1682|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$1682formal, filteredChildren:nullformal(z), testClass:_t$1681formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268(val$7); RET < boolean List.isEmpty() > (0) pi2: _t$1679 != null; _t$1679 != ""; _t$1680 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$946initial:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$1683formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{childrenLock:_t$1682rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$1681rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$1682|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$1681|->{clazz:_t$1680rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1680|->{name:_t$1679rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1679|->{}rearrange:(z)394:java.lang.String( sub ) do_imply n$8 _t$1683 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$946initial:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$1683 = n$8] |- n$8|->{childrenLock:_t$1682rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$1681rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$1682|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$1681|->{clazz:_t$1680rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1680|->{name:_t$1679rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1679|->{}rearrange:(z)394:java.lang.String( sub ) do_imply val$2 _t$1682 do_imply null null do_imply val$3 _t$1681 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$946initial:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$1681 = val$3; _t$1682 = val$2; _t$1683 = n$8] |- val$2|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); val$3|->{clazz:_t$1680rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1680|->{name:_t$1679rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1679|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$4 _t$1680 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$946initial:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$1680 = val$4; _t$1681 = val$3; _t$1682 = val$2; _t$1683 = n$8] |- val$2|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); val$4|->{name:_t$1679rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1679|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$946initial:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ) [SUB: val$1 = n$8; _t$1680 = val$4; _t$1681 = val$3; _t$1682 = val$2; _t$1683 = n$8] |- val$4|->{name:_t$1679rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1679|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$2: java.util.concurrent.locks.Lock( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$5 _t$1679 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$946initial:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ) [SUB: val$1 = n$8; _t$1679 = val$5; _t$1680 = val$4; _t$1681 = val$3; _t$1682 = val$2; _t$1683 = n$8] |- val$5|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$4: java.lang.Class( sub ) val$2: java.util.concurrent.locks.Lock( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$946initial:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ) [SUB: val$1 = n$8; _t$1679 = val$5; _t$1680 = val$4; _t$1681 = val$3; _t$1682 = val$2; _t$1683 = n$8] |- [FRAME TYPING: val$5: java.lang.String( sub ) val$4: java.lang.Class( sub ) val$2: java.util.concurrent.locks.Lock( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Result of Abduction SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$946initial:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$1679 = val$5; _t$1680 = val$4; _t$1681 = val$3; _t$1682 = val$2; _t$1683 = n$8] |- val$5 != null; val$5 != ""; val$4 != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$5|->{}rearrange:(z)394:java.lang.String( sub ); val$4|->{name:val$5rearrange:(z)15}rearrange:394:java.lang.Class( sub ); val$3|->{clazz:val$4rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); val$2|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:val$2rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: val$5: java.lang.String( sub ) val$4: java.lang.Class( sub ) val$2: java.util.concurrent.locks.Lock( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE in vpath_find exp:_t$1684 vpath_find: cannot find _t$1684 in vpath_find exp:_t$1685 vpath_find: cannot find _t$1685 in vpath_find exp:_t$1687 vpath_find: cannot find _t$1687 New footprint: Frame fld: Frame typ: val$5: java.lang.String( sub ) val$4: java.lang.Class( sub ) val$2: java.util.concurrent.locks.Lock( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) Missing fld: Instantiated frame: val$7|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); &classRules|->val$7update:268:java.util.List*; &$RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->val$7formal:java.util.List*( sub ); &$irvar0|->0nullify:void; &return|->n$946initial:org.junit.runners.model.Statement*; &$T0_31|->n$947initial:void; &$irvar1|->n$948initial:void; &statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &old_statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &$irvar2|->n$949initial:void; &this|->n$8formal:org.junit.runners.ParentRunner*( sub ); &old_this|->n$8formal:org.junit.runners.ParentRunner*( sub ) Instantiated post: PROP 1 of 2: val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1684); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(return|callee); UND < Annotation[] Class.getAnnotations() > :216(_t$1686); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$1687); LOCKED(val$2); RET < Annotation[] TestClass.getAnnotations() > (_t$1686); RET < List ParentRunner.getFilteredChildren() > (_t$1687); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1686); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = _t$1685update:270:org.junit.runner.Description* ; _t$1684|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; return|callee|->{fAnnotations:_t$1686update:270, fChildren:_t$1684update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$8|->{childrenLock:val$2formal, filteredChildren:_t$1687update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1687); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = EXN _t$1687update:270:org.junit.runner.Description* ; _t$1687|->{}alloc:java.lang.IllegalArgumentException; val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$8|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** RESULTS FUNCTION CALL ******* PROP 1 of 2: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$1); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(val$2); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$946initial:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$2|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$10|->{fAnnotations:_t$1update:270, fChildren:_t$2update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{childrenLock:val$2formal, filteredChildren:_t$0update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** END RESULTS FUNCTION CALL ******* pvar: classRules found error in dereference spec_pre: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1684); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$1686); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$1687); LOCKED(val$2); RET < List ParentRunner.getFilteredChildren() > (_t$1687); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1686); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$946initial:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$1684|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$10|->{fAnnotations:_t$1686update:270, fChildren:_t$1684update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{childrenLock:val$2formal, filteredChildren:_t$1687update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) exp val$7 desc: pvar: classRules found error in dereference spec_pre: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1687); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$1687update:270:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$1687|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) exp val$7 desc: Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] EXECUTING SPEC 5/5 ACTUAL PRECONDITION = val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$946initial:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$1688 != null; _t$1688 != ""; _t$1689 != null; _t$1691 != null ; this|callee = _t$1692formal:org.junit.runners.ParentRunner*( sub ) ; _t$1688|->{}rearrange:(z)394:java.lang.String( sub ); _t$1689|->{name:_t$1688rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1690|->{clazz:_t$1689rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1691|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:_t$1691rearrange:(z)530, testClass:_t$1690rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$1688 != null; _t$1688 != ""; _t$1689 != null; _t$1691 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$1693); MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(return|callee); UND < Annotation[] Class.getAnnotations() > :216(_t$1695); RET < Annotation[] TestClass.getAnnotations() > (_t$1695); RET < List ParentRunner.getFilteredChildren() > (_t$1691); RET < Class TestClass.getJavaClass() > (_t$1689); RET < String Class.getName() > (_t$1688); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1695); RET < TestClass ParentRunner.getTestClass() > (_t$1690) ; return|callee = _t$1694update:403:org.junit.runner.Description* ; _t$1693|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; return|callee|->{fAnnotations:_t$1695update:397, fChildren:_t$1693update:(z)397, fDisplayName:_t$1688update:397, fTestClass:_t$1689update:397, fUniqueId:_t$1688update:397}formal(z):org.junit.runner.Description; _t$1688|->{}formal:java.lang.String( sub ); _t$1689|->{name:_t$1688formal(z)}formal(z):java.lang.Class( sub ); _t$1690|->{clazz:_t$1689formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$1691|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$1691formal(z), testClass:_t$1690formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$1688 != null; _t$1688 != ""; _t$1689 != null; _t$1691 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$1694); RET < Class TestClass.getJavaClass() > (_t$1689); RET < String Class.getName() > (_t$1688); RET < TestClass ParentRunner.getTestClass() > (_t$1690) ; return|callee = EXN _t$1694update:397:org.junit.runner.Description* ; _t$1694|->{}alloc:java.lang.IllegalArgumentException; _t$1688|->{}formal:java.lang.String( sub ); _t$1689|->{name:_t$1688formal(z)}formal(z):java.lang.Class( sub ); _t$1690|->{clazz:_t$1689formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$1691|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$1691formal(z), testClass:_t$1690formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268(val$7); RET < boolean List.isEmpty() > (0) pi2: _t$1688 != null; _t$1688 != ""; _t$1689 != null; _t$1691 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$946initial:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$1692formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{filteredChildren:_t$1691rearrange:(z)530, testClass:_t$1690rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$1691|->{}rearrange:400:java.util.List( sub ); _t$1690|->{clazz:_t$1689rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1689|->{name:_t$1688rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1688|->{}rearrange:(z)394:java.lang.String( sub ) do_imply n$8 _t$1692 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$946initial:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$1692 = n$8] |- n$8|->{filteredChildren:_t$1691rearrange:(z)530, testClass:_t$1690rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$1691|->{}rearrange:400:java.util.List( sub ); _t$1690|->{clazz:_t$1689rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1689|->{name:_t$1688rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1688|->{}rearrange:(z)394:java.lang.String( sub ) do_imply null _t$1691 do_imply val$3 _t$1690 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$946initial:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$1690 = val$3; _t$1691 = null; _t$1692 = n$8] |- null|->{}rearrange:400:java.util.List( sub ); val$3|->{clazz:_t$1689rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1689|->{name:_t$1688rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1688|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$4 _t$1689 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$946initial:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$1689 = val$4; _t$1690 = val$3; _t$1691 = null; _t$1692 = n$8] |- null|->{}rearrange:400:java.util.List( sub ); val$4|->{name:_t$1688rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1688|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$946initial:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$1689 = val$4; _t$1690 = val$3; _t$1691 = null; _t$1692 = n$8 null|->{}rearrange:400:java.util.List( sub )] |- val$4|->{name:_t$1688rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1688|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$5 _t$1688 Current Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$946initial:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$1688 = val$5; _t$1689 = val$4; _t$1690 = val$3; _t$1691 = null; _t$1692 = n$8 null|->{}rearrange:400:java.util.List( sub )] |- val$5|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$946initial:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$1688 = val$5; _t$1689 = val$4; _t$1690 = val$3; _t$1691 = null; _t$1692 = n$8 null|->{}rearrange:400:java.util.List( sub )] |- [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$5: java.lang.String( sub ) val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] imply_pi: adding missing atom _t$1691 != null Result of Abduction SUB: val$1 = n$8 (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$946initial:org.junit.runners.model.Statement*; $T0_31 = n$947initial:void; $irvar1 = n$948initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$949initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$1688 = val$5; _t$1689 = val$4; _t$1690 = val$3; _t$1691 = null; _t$1692 = n$8 _t$1691 != null* null|->{}rearrange:400:java.util.List( sub )] |- val$5 != null; val$5 != ""; val$4 != null; null != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$5|->{}rearrange:(z)394:java.lang.String( sub ); val$4|->{name:val$5rearrange:(z)15}rearrange:394:java.lang.Class( sub ); val$3|->{clazz:val$4rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); null|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:nullrearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$5: java.lang.String( sub ) val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE Implication error: missing_sigma not empty in re-execution Instruction Returns PROP 1 of 2: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$6); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$5); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(val$2); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$4initial:org.junit.runners.model.Statement*; $T0_31 = _t$3initial:void; $irvar1 = _t$2initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$6|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$10|->{fAnnotations:_t$5update:270, fChildren:_t$6update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{childrenLock:val$2formal, filteredChildren:_t$0update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (n$10); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction *&$irvar1:org.junit.runner.Description*=n$10 [line 270] in vpath_find exp:n$950 vpath_find: cannot find n$950 in vpath_find exp:n$10 vpath_find: cannot find n$10 .... Rearrangement Start .... Exp: &$irvar1 Prop: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$950); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(n$951); UND < List Collections.unmodifiableList(ArrayList) > :534(n$952); LOCKED(val$2); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (n$952); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (n$951); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$953initial:org.junit.runners.model.Statement*; $T0_31 = n$954initial:void; $irvar1 = n$955initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$956initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$950|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:n$951update:270, fChildren:n$950update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{childrenLock:val$2formal, filteredChildren:n$952update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 1: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$2); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(val$2); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$5initial:org.junit.runners.model.Statement*; $T0_31 = _t$4initial:void; $irvar1 = n$10update:270:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$3|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); $irvar1|->{fAnnotations:_t$2update:270, fChildren:_t$3update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{childrenLock:val$2formal, filteredChildren:_t$0update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Skipping instr *&$irvar1:org.junit.runner.Description*=n$10 [line 270] due to exception Instruction NULLIFY(&this); [line 270] in vpath_find exp:_t$3 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$3 in vpath_find exp:n$10 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find n$10 Instruction Returns PROP 1 of 1: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$2); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(val$2); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$5initial:org.junit.runners.model.Statement*; $T0_31 = _t$4initial:void; $irvar1 = n$10update:270:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$3|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); $irvar1|->{fAnnotations:_t$2update:270, fChildren:_t$3update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{childrenLock:val$2formal, filteredChildren:_t$0update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction NULLIFY(&this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: val$1 = old_this ; (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (n$10); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction EXIT_SCOPE(_,n$8,n$10,this); [line 270] in vpath_find exp:_t$3 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$3 in vpath_find exp:n$10 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find n$10 Instruction Returns PROP 1 of 1: (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$4); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$3); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(val$2); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$3); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$6initial:org.junit.runners.model.Statement*; $T0_31 = _t$5initial:void; $irvar1 = _t$2update:270:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$4|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $irvar1|->{fAnnotations:_t$3update:270, fChildren:_t$4update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:_t$0update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction EXIT_SCOPE(_,n$8,n$10,this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (_t$4); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) .... After Symbolic Execution .... PROP 1 of 2: (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$4); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$3); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(val$2); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$3); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$6initial:org.junit.runners.model.Statement*; $T0_31 = _t$5initial:void; $irvar1 = _t$2update:270:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$4|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $irvar1|->{fAnnotations:_t$3update:270, fChildren:_t$4update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:_t$0update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: (-1 < val$8); val$8 != 1; val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (_t$4); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$8formal(z)}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub )
node10#session117(270) biabduction **** [RE:Pending] Statement ParentRunner.withClassRules(RunBefores) Node: 10, Procedure: Statement ParentRunner.withClassRules(RunBefores), Todo: 1 **** PROP 1 of 1: (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = val$1formal:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) .... Instructions: .... n$8=*&this:org.junit.runners.ParentRunner* [line 270]; _=*n$8:org.junit.runners.ParentRunner [line 270]; n$10=_fun_Description ParentRunner.getDescription()(n$8:org.junit.runners.ParentRunner*) virtual [line 270]; *&$irvar1:org.junit.runner.Description*=n$10 [line 270]; NULLIFY(&this); [line 270]; EXIT_SCOPE(_,n$8,n$10,this); [line 270]; Processing prop 1/1 Instruction n$8=*&this:org.junit.runners.ParentRunner* [line 270] .... Rearrangement Start .... Exp: &this Prop: (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1088initial:org.junit.runners.model.Statement*; $T0_31 = n$1089initial:void; $irvar1 = n$1090initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1091initial:void; this = val$1formal:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 1: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction _=*n$8:org.junit.runners.ParentRunner [line 270] .... Rearrangement Start .... Exp: n$8 Prop: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1092initial:org.junit.runners.model.Statement*; $T0_31 = n$1093initial:void; $irvar1 = n$1094initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1095initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 1: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction n$10=_fun_Description ParentRunner.getDescription()(n$8:org.junit.runners.ParentRunner*) virtual [line 270] Found 5 specs for function org.junit.runners.ParentRunner.getDescription():org.junit.runner.Description START EXECUTING SPECS FOR org.junit.runners.ParentRunner.getDescription():org.junit.runner.Description from state val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1096initial:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) EXECUTING SPEC 1/5 ACTUAL PRECONDITION = val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1096initial:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: this|callee = _t$1925formal:org.junit.runners.ParentRunner*( sub ) ; _t$1923|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1924|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$1924rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$1923rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$1926); MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(return|callee); MEMna < Annotation[] ParentRunner.getRunnerAnnotations():395 > {vpath: }(_t$1927); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$1929); LOCKED(_t$1924); RET < Annotation[] TestClass.getAnnotations() > (_t$1927); RET < List ParentRunner.getFilteredChildren() > (_t$1929); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1927); RET < TestClass ParentRunner.getTestClass() > (_t$1923) ; return|callee = _t$1928update:403:org.junit.runner.Description* ; _t$1926|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$1927|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$1927update:395, fChildren:_t$1926update:(z)395, fDisplayName:"null"update:395, fTestClass:nullupdate:395, fUniqueId:"null"update:395}formal(z):org.junit.runner.Description; _t$1923|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$1924|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$1924formal, filteredChildren:_t$1929update:(z)400, testClass:_t$1923formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$1929); RET < TestClass ParentRunner.getTestClass() > (_t$1923) ; return|callee = EXN _t$1929update:395:org.junit.runner.Description* ; _t$1929|->{}alloc:java.lang.IllegalArgumentException; _t$1923|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$1924|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$1924formal, filteredChildren:nullformal(z), testClass:_t$1923formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268(val$7); RET < boolean List.isEmpty() > (0) pi2: returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1096initial:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$1925formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{childrenLock:_t$1924rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$1923rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$1924|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$1923|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply n$8 _t$1925 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1096initial:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$1925 = n$8] |- n$8|->{childrenLock:_t$1924rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$1923rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$1924|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$1923|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply val$2 _t$1924 do_imply null null do_imply val$3 _t$1923 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1096initial:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$1923 = val$3; _t$1924 = val$2; _t$1925 = n$8] |- val$2|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$4 null Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1096initial:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$1923 = val$3; _t$1924 = val$2; _t$1925 = n$8 val$4 = null] |- val$2|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1096initial:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ) [SUB: val$1 = n$8; _t$1923 = val$3; _t$1924 = val$2; _t$1925 = n$8 val$4 = null] |- [FRAME TYPING: val$2: java.util.concurrent.locks.Lock( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Result of Abduction SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1096initial:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$1923 = val$3; _t$1924 = val$2; _t$1925 = n$8 val$4 = null] |- this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); val$2|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:val$2rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: val$2: java.util.concurrent.locks.Lock( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE in vpath_find exp:_t$1926 vpath_find: cannot find _t$1926 in vpath_find exp:_t$1928 vpath_find: cannot find _t$1928 in vpath_find exp:_t$1927 vpath_find: cannot find _t$1927 in vpath_find exp:_t$1929 vpath_find: cannot find _t$1929 New footprint: val$4 = null Frame fld: Frame typ: val$2: java.util.concurrent.locks.Lock( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) Missing fld: Instantiated frame: val$7|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); &classRules|->val$7update:268:java.util.List*; &$RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->val$7formal:java.util.List*( sub ); &$irvar0|->0nullify:void; &return|->n$1096initial:org.junit.runners.model.Statement*; &$T0_31|->n$1097initial:void; &$irvar1|->n$1098initial:void; &statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &old_statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &$irvar2|->n$1099initial:void; &this|->n$8formal:org.junit.runners.ParentRunner*( sub ); &old_this|->n$8formal:org.junit.runners.ParentRunner*( sub ) Instantiated post: PROP 1 of 2: MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1926); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(return|callee); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$1927); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$1929); LOCKED(val$2); RET < Annotation[] TestClass.getAnnotations() > (_t$1927); RET < List ParentRunner.getFilteredChildren() > (_t$1929); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1927); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = _t$1928update:270:org.junit.runner.Description* ; _t$1926|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$1927|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$1927update:270, fChildren:_t$1926update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$8|->{childrenLock:val$2formal, filteredChildren:_t$1929update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1929); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = EXN _t$1929update:270:org.junit.runner.Description* ; _t$1929|->{}alloc:java.lang.IllegalArgumentException; val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$8|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** RESULTS FUNCTION CALL ******* PROP 1 of 2: val$1 = old_this; val$4 = null ; (val$8 <= -1); val$5 != null; val$5 != ""; null != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(val$2); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1096initial:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$2|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$1|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$10|->{fAnnotations:_t$1update:270, fChildren:_t$2update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; old_this|->{childrenLock:val$2formal, filteredChildren:_t$0update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); null|->{name:val$5formal(z)}formal:java.lang.Class( sub ) PROP 2 of 2: val$1 = old_this; val$4 = null ; (val$8 <= -1); val$5 != null; val$5 != ""; null != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); null|->{name:val$5formal(z)}formal:java.lang.Class( sub ) ***** END RESULTS FUNCTION CALL ******* pvar: classRules found error in dereference spec_pre: val$1 = old_this; val$4 = null ; (val$8 <= -1); val$5 != null; val$5 != ""; null != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1926); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$1927); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$1929); LOCKED(val$2); RET < List ParentRunner.getFilteredChildren() > (_t$1929); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1927); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1096initial:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$1927|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; _t$1926|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$10|->{fAnnotations:_t$1927update:270, fChildren:_t$1926update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; old_this|->{childrenLock:val$2formal, filteredChildren:_t$1929update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); null|->{name:val$5formal(z)}formal:java.lang.Class( sub ) exp val$7 desc: pvar: classRules found error in dereference spec_pre: val$1 = old_this; val$4 = null ; (val$8 <= -1); val$5 != null; val$5 != ""; null != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1929); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$1929update:270:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$1929|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); null|->{name:val$5formal(z)}formal:java.lang.Class( sub ) exp val$7 desc: Prover.check_inconsistency_base: inconsistency reason [Some 0] Prover.check_inconsistency_base: inconsistency reason [Some 0] Prover.check_inconsistency_base: inconsistency reason [Some 0] EXECUTING SPEC 2/5 ACTUAL PRECONDITION = val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1096initial:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$1931 != null ; this|callee = _t$1932formal:org.junit.runners.ParentRunner*( sub ) ; _t$1930|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1931|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:_t$1931rearrange:(z)530, testClass:_t$1930rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$1931 != null; MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$1933); MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(return|callee); MEMna < Annotation[] ParentRunner.getRunnerAnnotations():395 > {vpath: }(_t$1934); RET < Annotation[] TestClass.getAnnotations() > (_t$1934); RET < List ParentRunner.getFilteredChildren() > (_t$1931); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1934); RET < TestClass ParentRunner.getTestClass() > (_t$1930) ; return|callee = _t$1935update:403:org.junit.runner.Description* ; _t$1933|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$1934|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$1934update:395, fChildren:_t$1933update:(z)395, fDisplayName:"null"update:395, fTestClass:nullupdate:395, fUniqueId:"null"update:395}formal(z):org.junit.runner.Description; _t$1930|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$1931|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$1931formal(z), testClass:_t$1930formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$1931 != null; MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$1935); RET < TestClass ParentRunner.getTestClass() > (_t$1930) ; return|callee = EXN _t$1935update:395:org.junit.runner.Description* ; _t$1935|->{}alloc:java.lang.IllegalArgumentException; _t$1930|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$1931|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$1931formal(z), testClass:_t$1930formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268(val$7); RET < boolean List.isEmpty() > (0) pi2: _t$1931 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1096initial:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$1932formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{filteredChildren:_t$1931rearrange:(z)530, testClass:_t$1930rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$1931|->{}rearrange:400:java.util.List( sub ); _t$1930|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply n$8 _t$1932 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1096initial:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$1932 = n$8] |- n$8|->{filteredChildren:_t$1931rearrange:(z)530, testClass:_t$1930rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$1931|->{}rearrange:400:java.util.List( sub ); _t$1930|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply null _t$1931 do_imply val$3 _t$1930 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1096initial:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$1930 = val$3; _t$1931 = null; _t$1932 = n$8] |- null|->{}rearrange:400:java.util.List( sub ); val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$4 null Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1096initial:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$1930 = val$3; _t$1931 = null; _t$1932 = n$8 val$4 = null] |- null|->{}rearrange:400:java.util.List( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1096initial:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$1930 = val$3; _t$1931 = null; _t$1932 = n$8 val$4 = null* null|->{}rearrange:400:java.util.List( sub )] |- [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Result of Abduction SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1096initial:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$1930 = val$3; _t$1931 = null; _t$1932 = n$8 val$4 = null* null|->{}rearrange:400:java.util.List( sub )] |- null != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); null|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:nullrearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE Implication error: missing_sigma not empty in re-execution EXECUTING SPEC 3/5 ACTUAL PRECONDITION = val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1096initial:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$1936 != null ; this|callee = _t$1938formal:org.junit.runners.ParentRunner*( sub ) ; _t$1936|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1937|->{clazz:_t$1936rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:_t$1937rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) POST 1 of 1: _t$1936 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$1939); RET < Class TestClass.getJavaClass() > (_t$1936); RET < TestClass ParentRunner.getTestClass() > (_t$1937) ; return|callee = EXN _t$1939update:397:org.junit.runner.Description* ; _t$1939|->{}alloc:java.lang.IllegalArgumentException; _t$1936|->{name:""formal(z)}formal(z):java.lang.Class( sub ); _t$1937|->{clazz:_t$1936formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:_t$1937formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268(val$7); RET < boolean List.isEmpty() > (0) pi2: _t$1936 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1096initial:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$1938formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{testClass:_t$1937rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$1937|->{clazz:_t$1936rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1936|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1096initial:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$1938formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{testClass:_t$1937rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$1937|->{clazz:_t$1936rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1936|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: ""|->{count:_t$1957none, hash:_t$1958none, offset:_t$1959none, value:_t$1960none}none:java.lang.String] [FRAME TYPING: "": java.lang.String ] do_imply n$8 _t$1938 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1096initial:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$1938 = n$8] |- n$8|->{testClass:_t$1937rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$1937|->{clazz:_t$1936rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1936|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: ""|->{count:_t$1957none, hash:_t$1958none, offset:_t$1959none, value:_t$1960none}none:java.lang.String] [FRAME TYPING: "": java.lang.String ] do_imply val$3 _t$1937 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1096initial:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$1937 = val$3; _t$1938 = n$8] |- val$3|->{clazz:_t$1936rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1936|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal, filteredChildren:nullformal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$1957none, hash:_t$1958none, offset:_t$1959none, value:_t$1960none}none:java.lang.String] [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] do_imply val$4 _t$1936 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1096initial:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$1936 = val$4; _t$1937 = val$3; _t$1938 = n$8] |- val$4|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal, filteredChildren:nullformal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$1957none, hash:_t$1958none, offset:_t$1959none, value:_t$1960none}none:java.lang.String] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] do_imply val$5 "" Final Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1096initial:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$1936 = val$4; _t$1937 = val$3; _t$1938 = n$8 val$5 = ""] |- [FRAME FLD: n$8|->{childrenLock:val$2formal, filteredChildren:nullformal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$1957none, hash:_t$1958none, offset:_t$1959none, value:_t$1960none}none:java.lang.String] [FRAME TYPING: val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] Result of Abduction SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1096initial:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$1936 = val$4; _t$1937 = val$3; _t$1938 = n$8 val$5 = ""] |- val$4 != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$4|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); val$3|->{clazz:val$4rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:val$3rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal, filteredChildren:nullformal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$1957none, hash:_t$1958none, offset:_t$1959none, value:_t$1960none}none:java.lang.String] [FRAME TYPING: val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] returning TRUE in vpath_find exp:_t$1939 vpath_find: cannot find _t$1939 New footprint: val$5 = "" Frame fld: n$8|->{childrenLock:val$2formal, filteredChildren:nullformal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$1957none, hash:_t$1958none, offset:_t$1959none, value:_t$1960none}none:java.lang.String Frame typ: val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String Missing fld: Instantiated frame: val$7|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); &classRules|->val$7update:268:java.util.List*; &$RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->val$7formal:java.util.List*( sub ); &$irvar0|->0nullify:void; &return|->n$1096initial:org.junit.runners.model.Statement*; &$T0_31|->n$1097initial:void; &$irvar1|->n$1098initial:void; &statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &old_statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &$irvar2|->n$1099initial:void; &this|->n$8formal:org.junit.runners.ParentRunner*( sub ); &old_this|->n$8formal:org.junit.runners.ParentRunner*( sub ) Instantiated post: PROP 1 of 1: val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1939); RET < Class TestClass.getJavaClass() > (val$4); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = EXN _t$1939update:270:org.junit.runner.Description* ; _t$1939|->{}alloc:java.lang.IllegalArgumentException; val$4|->{name:""formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); n$8|->{testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** RESULTS FUNCTION CALL ******* PROP 1 of 1: val$1 = old_this; val$5 = "" ; (val$8 <= -1); val$4 != null; null != ""; "" != ""; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Class TestClass.getJavaClass() > (val$4); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$4|->{name:""formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{}formal(z):java.lang.String( sub ) ***** END RESULTS FUNCTION CALL ******* pvar: classRules found error in dereference spec_pre: val$1 = old_this; val$5 = "" ; (val$8 <= -1); val$4 != null; null != ""; "" != ""; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1939); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Class TestClass.getJavaClass() > (val$4); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$1939update:270:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$1939|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$4|->{name:""formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{}formal(z):java.lang.String( sub ) exp val$7 desc: Prover.check_inconsistency_base: inconsistency reason [Some 2] Prover.check_inconsistency_base: inconsistency reason [Some 2] EXECUTING SPEC 4/5 ACTUAL PRECONDITION = val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1096initial:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$1940 != null; _t$1940 != ""; _t$1941 != null ; this|callee = _t$1944formal:org.junit.runners.ParentRunner*( sub ) ; _t$1940|->{}rearrange:(z)394:java.lang.String( sub ); _t$1941|->{name:_t$1940rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1942|->{clazz:_t$1941rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1943|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$1943rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$1942rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$1940 != null; _t$1940 != ""; _t$1941 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$1945); MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(return|callee); UND < Annotation[] Class.getAnnotations() > :216(_t$1947); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$1948); LOCKED(_t$1943); RET < Annotation[] TestClass.getAnnotations() > (_t$1947); RET < List ParentRunner.getFilteredChildren() > (_t$1948); RET < Class TestClass.getJavaClass() > (_t$1941); RET < String Class.getName() > (_t$1940); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1947); RET < TestClass ParentRunner.getTestClass() > (_t$1942) ; return|callee = _t$1946update:403:org.junit.runner.Description* ; _t$1945|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; return|callee|->{fAnnotations:_t$1947update:397, fChildren:_t$1945update:(z)397, fDisplayName:_t$1940update:397, fTestClass:_t$1941update:397, fUniqueId:_t$1940update:397}formal(z):org.junit.runner.Description; _t$1940|->{}formal:java.lang.String( sub ); _t$1941|->{name:_t$1940formal(z)}formal(z):java.lang.Class( sub ); _t$1942|->{clazz:_t$1941formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$1943|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$1943formal, filteredChildren:_t$1948update:(z)400, testClass:_t$1942formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$1940 != null; _t$1940 != ""; _t$1941 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$1948); RET < Class TestClass.getJavaClass() > (_t$1941); RET < String Class.getName() > (_t$1940); RET < TestClass ParentRunner.getTestClass() > (_t$1942) ; return|callee = EXN _t$1948update:397:org.junit.runner.Description* ; _t$1948|->{}alloc:java.lang.IllegalArgumentException; _t$1940|->{}formal:java.lang.String( sub ); _t$1941|->{name:_t$1940formal(z)}formal(z):java.lang.Class( sub ); _t$1942|->{clazz:_t$1941formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$1943|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$1943formal, filteredChildren:nullformal(z), testClass:_t$1942formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268(val$7); RET < boolean List.isEmpty() > (0) pi2: _t$1940 != null; _t$1940 != ""; _t$1941 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1096initial:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$1944formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{childrenLock:_t$1943rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$1942rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$1943|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$1942|->{clazz:_t$1941rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1941|->{name:_t$1940rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1940|->{}rearrange:(z)394:java.lang.String( sub ) do_imply n$8 _t$1944 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1096initial:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$1944 = n$8] |- n$8|->{childrenLock:_t$1943rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$1942rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$1943|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$1942|->{clazz:_t$1941rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1941|->{name:_t$1940rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1940|->{}rearrange:(z)394:java.lang.String( sub ) do_imply val$2 _t$1943 do_imply null null do_imply val$3 _t$1942 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1096initial:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$1942 = val$3; _t$1943 = val$2; _t$1944 = n$8] |- val$2|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); val$3|->{clazz:_t$1941rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1941|->{name:_t$1940rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1940|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$4 _t$1941 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1096initial:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$1941 = val$4; _t$1942 = val$3; _t$1943 = val$2; _t$1944 = n$8] |- val$2|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); val$4|->{name:_t$1940rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1940|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1096initial:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ) [SUB: val$1 = n$8; _t$1941 = val$4; _t$1942 = val$3; _t$1943 = val$2; _t$1944 = n$8] |- val$4|->{name:_t$1940rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1940|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$2: java.util.concurrent.locks.Lock( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$5 _t$1940 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1096initial:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ) [SUB: val$1 = n$8; _t$1940 = val$5; _t$1941 = val$4; _t$1942 = val$3; _t$1943 = val$2; _t$1944 = n$8] |- val$5|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$4: java.lang.Class( sub ) val$2: java.util.concurrent.locks.Lock( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1096initial:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [SUB: val$1 = n$8; _t$1940 = val$5; _t$1941 = val$4; _t$1942 = val$3; _t$1943 = val$2; _t$1944 = n$8] |- [FRAME TYPING: val$5: java.lang.String( sub ) val$4: java.lang.Class( sub ) val$2: java.util.concurrent.locks.Lock( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Result of Abduction SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1096initial:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$1940 = val$5; _t$1941 = val$4; _t$1942 = val$3; _t$1943 = val$2; _t$1944 = n$8] |- val$5 != null; val$5 != ""; val$4 != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$5|->{}rearrange:(z)394:java.lang.String( sub ); val$4|->{name:val$5rearrange:(z)15}rearrange:394:java.lang.Class( sub ); val$3|->{clazz:val$4rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); val$2|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:val$2rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: val$5: java.lang.String( sub ) val$4: java.lang.Class( sub ) val$2: java.util.concurrent.locks.Lock( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE in vpath_find exp:_t$1945 vpath_find: cannot find _t$1945 in vpath_find exp:_t$1946 vpath_find: cannot find _t$1946 in vpath_find exp:_t$1948 vpath_find: cannot find _t$1948 New footprint: Frame fld: Frame typ: val$5: java.lang.String( sub ) val$4: java.lang.Class( sub ) val$2: java.util.concurrent.locks.Lock( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) Missing fld: Instantiated frame: val$7|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); &classRules|->val$7update:268:java.util.List*; &$RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->val$7formal:java.util.List*( sub ); &$irvar0|->0nullify:void; &return|->n$1096initial:org.junit.runners.model.Statement*; &$T0_31|->n$1097initial:void; &$irvar1|->n$1098initial:void; &statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &old_statement|->val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); &$irvar2|->n$1099initial:void; &this|->n$8formal:org.junit.runners.ParentRunner*( sub ); &old_this|->n$8formal:org.junit.runners.ParentRunner*( sub ) Instantiated post: PROP 1 of 2: val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1945); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(return|callee); UND < Annotation[] Class.getAnnotations() > :216(_t$1947); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$1948); LOCKED(val$2); RET < Annotation[] TestClass.getAnnotations() > (_t$1947); RET < List ParentRunner.getFilteredChildren() > (_t$1948); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1947); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = _t$1946update:270:org.junit.runner.Description* ; _t$1945|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; return|callee|->{fAnnotations:_t$1947update:270, fChildren:_t$1945update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$8|->{childrenLock:val$2formal, filteredChildren:_t$1948update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1948); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = EXN _t$1948update:270:org.junit.runner.Description* ; _t$1948|->{}alloc:java.lang.IllegalArgumentException; val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$8|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** RESULTS FUNCTION CALL ******* PROP 1 of 2: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$1); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(val$2); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1096initial:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$2|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$10|->{fAnnotations:_t$1update:270, fChildren:_t$2update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{childrenLock:val$2formal, filteredChildren:_t$0update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** END RESULTS FUNCTION CALL ******* pvar: classRules found error in dereference spec_pre: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1945); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$1947); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$1948); LOCKED(val$2); RET < List ParentRunner.getFilteredChildren() > (_t$1948); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1947); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1096initial:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$1945|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$10|->{fAnnotations:_t$1947update:270, fChildren:_t$1945update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{childrenLock:val$2formal, filteredChildren:_t$1948update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) exp val$7 desc: pvar: classRules found error in dereference spec_pre: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1948); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$1948update:270:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$1948|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) exp val$7 desc: Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] EXECUTING SPEC 5/5 ACTUAL PRECONDITION = val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1096initial:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$1949 != null; _t$1949 != ""; _t$1950 != null; _t$1952 != null ; this|callee = _t$1953formal:org.junit.runners.ParentRunner*( sub ) ; _t$1949|->{}rearrange:(z)394:java.lang.String( sub ); _t$1950|->{name:_t$1949rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1951|->{clazz:_t$1950rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1952|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:_t$1952rearrange:(z)530, testClass:_t$1951rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$1949 != null; _t$1949 != ""; _t$1950 != null; _t$1952 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$1954); MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(return|callee); UND < Annotation[] Class.getAnnotations() > :216(_t$1956); RET < Annotation[] TestClass.getAnnotations() > (_t$1956); RET < List ParentRunner.getFilteredChildren() > (_t$1952); RET < Class TestClass.getJavaClass() > (_t$1950); RET < String Class.getName() > (_t$1949); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1956); RET < TestClass ParentRunner.getTestClass() > (_t$1951) ; return|callee = _t$1955update:403:org.junit.runner.Description* ; _t$1954|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; return|callee|->{fAnnotations:_t$1956update:397, fChildren:_t$1954update:(z)397, fDisplayName:_t$1949update:397, fTestClass:_t$1950update:397, fUniqueId:_t$1949update:397}formal(z):org.junit.runner.Description; _t$1949|->{}formal:java.lang.String( sub ); _t$1950|->{name:_t$1949formal(z)}formal(z):java.lang.Class( sub ); _t$1951|->{clazz:_t$1950formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$1952|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$1952formal(z), testClass:_t$1951formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$1949 != null; _t$1949 != ""; _t$1950 != null; _t$1952 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$1955); RET < Class TestClass.getJavaClass() > (_t$1950); RET < String Class.getName() > (_t$1949); RET < TestClass ParentRunner.getTestClass() > (_t$1951) ; return|callee = EXN _t$1955update:397:org.junit.runner.Description* ; _t$1955|->{}alloc:java.lang.IllegalArgumentException; _t$1949|->{}formal:java.lang.String( sub ); _t$1950|->{name:_t$1949formal(z)}formal(z):java.lang.Class( sub ); _t$1951|->{clazz:_t$1950formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$1952|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$1952formal(z), testClass:_t$1951formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268(val$7); RET < boolean List.isEmpty() > (0) pi2: _t$1949 != null; _t$1949 != ""; _t$1950 != null; _t$1952 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1096initial:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$1953formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{filteredChildren:_t$1952rearrange:(z)530, testClass:_t$1951rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$1952|->{}rearrange:400:java.util.List( sub ); _t$1951|->{clazz:_t$1950rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1950|->{name:_t$1949rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1949|->{}rearrange:(z)394:java.lang.String( sub ) do_imply n$8 _t$1953 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1096initial:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$1953 = n$8] |- n$8|->{filteredChildren:_t$1952rearrange:(z)530, testClass:_t$1951rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$1952|->{}rearrange:400:java.util.List( sub ); _t$1951|->{clazz:_t$1950rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1950|->{name:_t$1949rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1949|->{}rearrange:(z)394:java.lang.String( sub ) do_imply null _t$1952 do_imply val$3 _t$1951 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1096initial:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$1951 = val$3; _t$1952 = null; _t$1953 = n$8] |- null|->{}rearrange:400:java.util.List( sub ); val$3|->{clazz:_t$1950rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$1950|->{name:_t$1949rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1949|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$4 _t$1950 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1096initial:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$1950 = val$4; _t$1951 = val$3; _t$1952 = null; _t$1953 = n$8] |- null|->{}rearrange:400:java.util.List( sub ); val$4|->{name:_t$1949rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1949|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1096initial:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$1950 = val$4; _t$1951 = val$3; _t$1952 = null; _t$1953 = n$8 null|->{}rearrange:400:java.util.List( sub )] |- val$4|->{name:_t$1949rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$1949|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$5 _t$1949 Current Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1096initial:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$1949 = val$5; _t$1950 = val$4; _t$1951 = val$3; _t$1952 = null; _t$1953 = n$8 null|->{}rearrange:400:java.util.List( sub )] |- val$5|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1096initial:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$1949 = val$5; _t$1950 = val$4; _t$1951 = val$3; _t$1952 = null; _t$1953 = n$8 null|->{}rearrange:400:java.util.List( sub )] |- [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$5: java.lang.String( sub ) val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] imply_pi: adding missing atom _t$1952 != null Result of Abduction SUB: val$1 = n$8 (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1096initial:org.junit.runners.model.Statement*; $T0_31 = n$1097initial:void; $irvar1 = n$1098initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1099initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal(z):java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal:java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$1949 = val$5; _t$1950 = val$4; _t$1951 = val$3; _t$1952 = null; _t$1953 = n$8 _t$1952 != null* null|->{}rearrange:400:java.util.List( sub )] |- val$5 != null; val$5 != ""; val$4 != null; null != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$5|->{}rearrange:(z)394:java.lang.String( sub ); val$4|->{name:val$5rearrange:(z)15}rearrange:394:java.lang.Class( sub ); val$3|->{clazz:val$4rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); null|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:nullrearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$5: java.lang.String( sub ) val$4: java.lang.Class( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE Implication error: missing_sigma not empty in re-execution Instruction Returns PROP 1 of 2: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$6); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$5); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(val$2); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$4initial:org.junit.runners.model.Statement*; $T0_31 = _t$3initial:void; $irvar1 = _t$2initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$6|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$10|->{fAnnotations:_t$5update:270, fChildren:_t$6update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{childrenLock:val$2formal, filteredChildren:_t$0update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (n$10); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction *&$irvar1:org.junit.runner.Description*=n$10 [line 270] in vpath_find exp:n$1100 vpath_find: cannot find n$1100 in vpath_find exp:n$10 vpath_find: cannot find n$10 .... Rearrangement Start .... Exp: &$irvar1 Prop: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$1100); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(n$1101); UND < List Collections.unmodifiableList(ArrayList) > :534(n$1102); LOCKED(val$2); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (n$1102); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (n$1101); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1103initial:org.junit.runners.model.Statement*; $T0_31 = n$1104initial:void; $irvar1 = n$1105initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1106initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$1100|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:n$1101update:270, fChildren:n$1100update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{childrenLock:val$2formal, filteredChildren:n$1102update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 1: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$2); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(val$2); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$5initial:org.junit.runners.model.Statement*; $T0_31 = _t$4initial:void; $irvar1 = n$10update:270:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$3|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); $irvar1|->{fAnnotations:_t$2update:270, fChildren:_t$3update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{childrenLock:val$2formal, filteredChildren:_t$0update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Skipping instr *&$irvar1:org.junit.runner.Description*=n$10 [line 270] due to exception Instruction NULLIFY(&this); [line 270] in vpath_find exp:_t$3 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$3 in vpath_find exp:n$10 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find n$10 Instruction Returns PROP 1 of 1: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$2); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(val$2); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$5initial:org.junit.runners.model.Statement*; $T0_31 = _t$4initial:void; $irvar1 = n$10update:270:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$3|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); $irvar1|->{fAnnotations:_t$2update:270, fChildren:_t$3update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; old_this|->{childrenLock:val$2formal, filteredChildren:_t$0update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction NULLIFY(&this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: val$1 = old_this ; (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (n$10); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction EXIT_SCOPE(_,n$8,n$10,this); [line 270] in vpath_find exp:_t$3 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$3 in vpath_find exp:n$10 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find n$10 Instruction Returns PROP 1 of 1: (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$4); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$3); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(val$2); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$3); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$6initial:org.junit.runners.model.Statement*; $T0_31 = _t$5initial:void; $irvar1 = _t$2update:270:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$4|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $irvar1|->{fAnnotations:_t$3update:270, fChildren:_t$4update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:_t$0update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction EXIT_SCOPE(_,n$8,n$10,this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (_t$4); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) .... After Symbolic Execution .... PROP 1 of 2: (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$4); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < Annotation[] Class.getAnnotations() > :216(_t$3); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(val$2); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$3); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$6initial:org.junit.runners.model.Statement*; $T0_31 = _t$5initial:void; $irvar1 = _t$2update:270:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$4|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $irvar1|->{fAnnotations:_t$3update:270, fChildren:_t$4update:(z)270, fDisplayName:val$5update:270, fTestClass:val$4update:270, fUniqueId:val$5update:270}formal(z):org.junit.runner.Description; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:_t$0update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: (val$8 <= -1); val$5 != null; val$5 != ""; val$4 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (_t$4); RET < Class TestClass.getJavaClass() > (val$4); RET < String Class.getName() > (val$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$7update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$7formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$6formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$5|->{}formal:java.lang.String( sub ); val$4|->{name:val$5formal(z)}formal(z):java.lang.Class( sub ); val$3|->{clazz:val$4formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub )
node10#session132(270) biabduction **** [RE:Pending] Statement ParentRunner.withClassRules(RunBefores) Node: 10, Procedure: Statement ParentRunner.withClassRules(RunBefores), Todo: 1 **** PROP 1 of 1: (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = val$1formal:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) .... Instructions: .... n$8=*&this:org.junit.runners.ParentRunner* [line 270]; _=*n$8:org.junit.runners.ParentRunner [line 270]; n$10=_fun_Description ParentRunner.getDescription()(n$8:org.junit.runners.ParentRunner*) virtual [line 270]; *&$irvar1:org.junit.runner.Description*=n$10 [line 270]; NULLIFY(&this); [line 270]; EXIT_SCOPE(_,n$8,n$10,this); [line 270]; Processing prop 1/1 Instruction n$8=*&this:org.junit.runners.ParentRunner* [line 270] .... Rearrangement Start .... Exp: &this Prop: (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1247initial:org.junit.runners.model.Statement*; $T0_31 = n$1248initial:void; $irvar1 = n$1249initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1250initial:void; this = val$1formal:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 1: val$1 = old_this ; (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction _=*n$8:org.junit.runners.ParentRunner [line 270] .... Rearrangement Start .... Exp: n$8 Prop: val$1 = old_this ; (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1251initial:org.junit.runners.model.Statement*; $T0_31 = n$1252initial:void; $irvar1 = n$1253initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1254initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 1: val$1 = old_this ; (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction n$10=_fun_Description ParentRunner.getDescription()(n$8:org.junit.runners.ParentRunner*) virtual [line 270] Found 5 specs for function org.junit.runners.ParentRunner.getDescription():org.junit.runner.Description START EXECUTING SPECS FOR org.junit.runners.ParentRunner.getDescription():org.junit.runner.Description from state val$1 = old_this ; (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1255initial:org.junit.runners.model.Statement*; $T0_31 = n$1256initial:void; $irvar1 = n$1257initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1258initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) EXECUTING SPEC 1/5 ACTUAL PRECONDITION = val$1 = old_this ; (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1255initial:org.junit.runners.model.Statement*; $T0_31 = n$1256initial:void; $irvar1 = n$1257initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1258initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: this|callee = _t$2204formal:org.junit.runners.ParentRunner*( sub ) ; _t$2202|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2203|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$2203rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$2202rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$2205); MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(return|callee); MEMna < Annotation[] ParentRunner.getRunnerAnnotations():395 > {vpath: }(_t$2206); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$2208); LOCKED(_t$2203); RET < Annotation[] TestClass.getAnnotations() > (_t$2206); RET < List ParentRunner.getFilteredChildren() > (_t$2208); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2206); RET < TestClass ParentRunner.getTestClass() > (_t$2202) ; return|callee = _t$2207update:403:org.junit.runner.Description* ; _t$2205|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$2206|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$2206update:395, fChildren:_t$2205update:(z)395, fDisplayName:"null"update:395, fTestClass:nullupdate:395, fUniqueId:"null"update:395}formal(z):org.junit.runner.Description; _t$2202|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$2203|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$2203formal, filteredChildren:_t$2208update:(z)400, testClass:_t$2202formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$2208); RET < TestClass ParentRunner.getTestClass() > (_t$2202) ; return|callee = EXN _t$2208update:395:org.junit.runner.Description* ; _t$2208|->{}alloc:java.lang.IllegalArgumentException; _t$2202|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$2203|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$2203formal, filteredChildren:nullformal(z), testClass:_t$2202formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268(val$5); RET < boolean List.isEmpty() > (0) pi2: returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1255initial:org.junit.runners.model.Statement*; $T0_31 = n$1256initial:void; $irvar1 = n$1257initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1258initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$2204formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{childrenLock:_t$2203rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$2202rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$2203|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$2202|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply n$8 _t$2204 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1255initial:org.junit.runners.model.Statement*; $T0_31 = n$1256initial:void; $irvar1 = n$1257initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1258initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$2204 = n$8] |- n$8|->{childrenLock:_t$2203rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$2202rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$2203|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$2202|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply val$2 null do_imply val$3 _t$2202 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1255initial:org.junit.runners.model.Statement*; $T0_31 = n$1256initial:void; $irvar1 = n$1257initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1258initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$2202 = val$3; _t$2203 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$2204 = n$8 val$2 = null MISSING FLD: n$8|->{childrenLock:_t$2203rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply null null Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1255initial:org.junit.runners.model.Statement*; $T0_31 = n$1256initial:void; $irvar1 = n$1257initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1258initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$2202 = val$3; _t$2203 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$2204 = n$8 val$2 = null MISSING FLD: n$8|->{childrenLock:_t$2203rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1255initial:org.junit.runners.model.Statement*; $T0_31 = n$1256initial:void; $irvar1 = n$1257initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1258initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$2202 = val$3; _t$2203 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$2204 = n$8 val$2 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$2203rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Result of Abduction SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1255initial:org.junit.runners.model.Statement*; $T0_31 = n$1256initial:void; $irvar1 = n$1257initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1258initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$2202 = val$3; _t$2203 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$2204 = n$8 val$2 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$2203rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:%path%n8_org.junit.runners.ParentRunner.childrenLock$-3rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE WARNING: Missing fields hpred has non-footprint vars: n$8|->{childrenLock:%path%n8_org.junit.runners.ParentRunner.childrenLock$-3rearrange:531}formal(z):org.junit.runners.ParentRunner( sub ) Implication error: missing_sigma not empty in re-execution EXECUTING SPEC 2/5 ACTUAL PRECONDITION = val$1 = old_this ; (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1255initial:org.junit.runners.model.Statement*; $T0_31 = n$1256initial:void; $irvar1 = n$1257initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1258initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$2210 != null ; this|callee = _t$2211formal:org.junit.runners.ParentRunner*( sub ) ; _t$2209|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2210|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:_t$2210rearrange:(z)530, testClass:_t$2209rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$2210 != null; MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$2212); MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(return|callee); MEMna < Annotation[] ParentRunner.getRunnerAnnotations():395 > {vpath: }(_t$2213); RET < Annotation[] TestClass.getAnnotations() > (_t$2213); RET < List ParentRunner.getFilteredChildren() > (_t$2210); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2213); RET < TestClass ParentRunner.getTestClass() > (_t$2209) ; return|callee = _t$2214update:403:org.junit.runner.Description* ; _t$2212|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$2213|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$2213update:395, fChildren:_t$2212update:(z)395, fDisplayName:"null"update:395, fTestClass:nullupdate:395, fUniqueId:"null"update:395}formal(z):org.junit.runner.Description; _t$2209|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$2210|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$2210formal(z), testClass:_t$2209formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$2210 != null; MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$2214); RET < TestClass ParentRunner.getTestClass() > (_t$2209) ; return|callee = EXN _t$2214update:395:org.junit.runner.Description* ; _t$2214|->{}alloc:java.lang.IllegalArgumentException; _t$2209|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$2210|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$2210formal(z), testClass:_t$2209formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268(val$5); RET < boolean List.isEmpty() > (0) pi2: _t$2210 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1255initial:org.junit.runners.model.Statement*; $T0_31 = n$1256initial:void; $irvar1 = n$1257initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1258initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$2211formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{filteredChildren:_t$2210rearrange:(z)530, testClass:_t$2209rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$2210|->{}rearrange:400:java.util.List( sub ); _t$2209|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply n$8 _t$2211 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1255initial:org.junit.runners.model.Statement*; $T0_31 = n$1256initial:void; $irvar1 = n$1257initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1258initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$2211 = n$8] |- n$8|->{filteredChildren:_t$2210rearrange:(z)530, testClass:_t$2209rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$2210|->{}rearrange:400:java.util.List( sub ); _t$2209|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply val$2 _t$2210 do_imply val$3 _t$2209 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1255initial:org.junit.runners.model.Statement*; $T0_31 = n$1256initial:void; $irvar1 = n$1257initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1258initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$2209 = val$3; _t$2210 = val$2; _t$2211 = n$8] |- val$2|->{}rearrange:400:java.util.List( sub ); val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply null null Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1255initial:org.junit.runners.model.Statement*; $T0_31 = n$1256initial:void; $irvar1 = n$1257initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1258initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$2209 = val$3; _t$2210 = val$2; _t$2211 = n$8] |- val$2|->{}rearrange:400:java.util.List( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1255initial:org.junit.runners.model.Statement*; $T0_31 = n$1256initial:void; $irvar1 = n$1257initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1258initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ) [SUB: val$1 = n$8; _t$2209 = val$3; _t$2210 = val$2; _t$2211 = n$8] |- [FRAME TYPING: val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Result of Abduction SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1255initial:org.junit.runners.model.Statement*; $T0_31 = n$1256initial:void; $irvar1 = n$1257initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1258initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$2209 = val$3; _t$2210 = val$2; _t$2211 = n$8] |- val$2 != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); val$2|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:val$2rearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE in vpath_find exp:_t$2212 vpath_find: cannot find _t$2212 in vpath_find exp:_t$2214 vpath_find: cannot find _t$2214 in vpath_find exp:_t$2213 vpath_find: cannot find _t$2213 in vpath_find exp:_t$2214 vpath_find: cannot find _t$2214 New footprint: Frame fld: Frame typ: val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) Missing fld: Instantiated frame: val$5|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); &classRules|->val$5update:268:java.util.List*; &$RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->val$5formal:java.util.List*( sub ); &$irvar0|->0nullify:void; &return|->n$1255initial:org.junit.runners.model.Statement*; &$T0_31|->n$1256initial:void; &$irvar1|->n$1257initial:void; &statement|->val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); &old_statement|->val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); &$irvar2|->n$1258initial:void; &this|->n$8formal:org.junit.runners.ParentRunner*( sub ); &old_this|->n$8formal:org.junit.runners.ParentRunner*( sub ) Instantiated post: PROP 1 of 2: val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2212); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(return|callee); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$2213); RET < Annotation[] TestClass.getAnnotations() > (_t$2213); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2213); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = _t$2214update:270:org.junit.runner.Description* ; _t$2212|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$2213|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$2213update:270, fChildren:_t$2212update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$8|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2214); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = EXN _t$2214update:270:org.junit.runner.Description* ; _t$2214|->{}alloc:java.lang.IllegalArgumentException; val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$8|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** RESULTS FUNCTION CALL ******* PROP 1 of 2: val$1 = old_this ; (-1 < val$6); val$6 != 1; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$0); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1255initial:org.junit.runners.model.Statement*; $T0_31 = n$1256initial:void; $irvar1 = n$1257initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1258initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$1|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$0|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$10|->{fAnnotations:_t$0update:270, fChildren:_t$1update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: val$1 = old_this ; (-1 < val$6); val$6 != 1; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = n$1256initial:void; $irvar1 = n$1257initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1258initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** END RESULTS FUNCTION CALL ******* pvar: classRules found error in dereference spec_pre: val$1 = old_this ; (-1 < val$6); val$6 != 1; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2212); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$2213); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2213); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1255initial:org.junit.runners.model.Statement*; $T0_31 = n$1256initial:void; $irvar1 = n$1257initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1258initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$2213|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; _t$2212|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$10|->{fAnnotations:_t$2213update:270, fChildren:_t$2212update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) exp val$5 desc: pvar: classRules found error in dereference spec_pre: val$1 = old_this ; (-1 < val$6); val$6 != 1; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2214); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$2214update:270:org.junit.runners.model.Statement*; $T0_31 = n$1256initial:void; $irvar1 = n$1257initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1258initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$2214|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) exp val$5 desc: Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] EXECUTING SPEC 3/5 ACTUAL PRECONDITION = val$1 = old_this ; (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1255initial:org.junit.runners.model.Statement*; $T0_31 = n$1256initial:void; $irvar1 = n$1257initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1258initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$2215 != null ; this|callee = _t$2217formal:org.junit.runners.ParentRunner*( sub ) ; _t$2215|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2216|->{clazz:_t$2215rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:_t$2216rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) POST 1 of 1: _t$2215 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$2218); RET < Class TestClass.getJavaClass() > (_t$2215); RET < TestClass ParentRunner.getTestClass() > (_t$2216) ; return|callee = EXN _t$2218update:397:org.junit.runner.Description* ; _t$2218|->{}alloc:java.lang.IllegalArgumentException; _t$2215|->{name:""formal(z)}formal(z):java.lang.Class( sub ); _t$2216|->{clazz:_t$2215formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:_t$2216formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268(val$5); RET < boolean List.isEmpty() > (0) pi2: _t$2215 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1255initial:org.junit.runners.model.Statement*; $T0_31 = n$1256initial:void; $irvar1 = n$1257initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1258initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$2217formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{testClass:_t$2216rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$2216|->{clazz:_t$2215rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2215|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1255initial:org.junit.runners.model.Statement*; $T0_31 = n$1256initial:void; $irvar1 = n$1257initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1258initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$2217formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{testClass:_t$2216rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$2216|->{clazz:_t$2215rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2215|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: ""|->{count:_t$2236none, hash:_t$2237none, offset:_t$2238none, value:_t$2239none}none:java.lang.String] [FRAME TYPING: "": java.lang.String ] do_imply n$8 _t$2217 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1255initial:org.junit.runners.model.Statement*; $T0_31 = n$1256initial:void; $irvar1 = n$1257initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1258initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$2217 = n$8] |- n$8|->{testClass:_t$2216rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$2216|->{clazz:_t$2215rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2215|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: ""|->{count:_t$2236none, hash:_t$2237none, offset:_t$2238none, value:_t$2239none}none:java.lang.String] [FRAME TYPING: "": java.lang.String ] do_imply val$3 _t$2216 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1255initial:org.junit.runners.model.Statement*; $T0_31 = n$1256initial:void; $irvar1 = n$1257initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1258initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$2216 = val$3; _t$2217 = n$8] |- val$3|->{clazz:_t$2215rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2215|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: n$8|->{filteredChildren:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$2236none, hash:_t$2237none, offset:_t$2238none, value:_t$2239none}none:java.lang.String] [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] do_imply null _t$2215 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1255initial:org.junit.runners.model.Statement*; $T0_31 = n$1256initial:void; $irvar1 = n$1257initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1258initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$2215 = null; _t$2216 = val$3; _t$2217 = n$8] |- null|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: n$8|->{filteredChildren:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$2236none, hash:_t$2237none, offset:_t$2238none, value:_t$2239none}none:java.lang.String] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] Final Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1255initial:org.junit.runners.model.Statement*; $T0_31 = n$1256initial:void; $irvar1 = n$1257initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1258initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$2215 = null; _t$2216 = val$3; _t$2217 = n$8 @f$1 = ""* null|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub )] |- [FRAME FLD: n$8|->{filteredChildren:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$2236none, hash:_t$2237none, offset:_t$2238none, value:_t$2239none}none:java.lang.String] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] imply_pi: adding missing atom _t$2215 != null Result of Abduction SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1255initial:org.junit.runners.model.Statement*; $T0_31 = n$1256initial:void; $irvar1 = n$1257initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1258initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$2215 = null; _t$2216 = val$3; _t$2217 = n$8 _t$2215 != null; @f$1 = ""* null|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub )] |- null != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; null|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:val$3rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME FLD: n$8|->{filteredChildren:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$2236none, hash:_t$2237none, offset:_t$2238none, value:_t$2239none}none:java.lang.String] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] returning TRUE explain_dereference_as_caller_expression _t$2215: cannot explain None found error in dereference spec_pre: _t$2215 != null ; this|callee = _t$2217formal:org.junit.runners.ParentRunner*( sub ) ; _t$2215|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2216|->{clazz:_t$2215rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:_t$2216rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) exp _t$2215 desc: EXECUTING SPEC 4/5 ACTUAL PRECONDITION = val$1 = old_this ; (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1255initial:org.junit.runners.model.Statement*; $T0_31 = n$1256initial:void; $irvar1 = n$1257initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1258initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$2219 != null; _t$2219 != ""; _t$2220 != null ; this|callee = _t$2223formal:org.junit.runners.ParentRunner*( sub ) ; _t$2219|->{}rearrange:(z)394:java.lang.String( sub ); _t$2220|->{name:_t$2219rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2221|->{clazz:_t$2220rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2222|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$2222rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$2221rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$2219 != null; _t$2219 != ""; _t$2220 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$2224); MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(return|callee); UND < Annotation[] Class.getAnnotations() > :216(_t$2226); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$2227); LOCKED(_t$2222); RET < Annotation[] TestClass.getAnnotations() > (_t$2226); RET < List ParentRunner.getFilteredChildren() > (_t$2227); RET < Class TestClass.getJavaClass() > (_t$2220); RET < String Class.getName() > (_t$2219); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2226); RET < TestClass ParentRunner.getTestClass() > (_t$2221) ; return|callee = _t$2225update:403:org.junit.runner.Description* ; _t$2224|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; return|callee|->{fAnnotations:_t$2226update:397, fChildren:_t$2224update:(z)397, fDisplayName:_t$2219update:397, fTestClass:_t$2220update:397, fUniqueId:_t$2219update:397}formal(z):org.junit.runner.Description; _t$2219|->{}formal:java.lang.String( sub ); _t$2220|->{name:_t$2219formal(z)}formal(z):java.lang.Class( sub ); _t$2221|->{clazz:_t$2220formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$2222|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$2222formal, filteredChildren:_t$2227update:(z)400, testClass:_t$2221formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$2219 != null; _t$2219 != ""; _t$2220 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$2227); RET < Class TestClass.getJavaClass() > (_t$2220); RET < String Class.getName() > (_t$2219); RET < TestClass ParentRunner.getTestClass() > (_t$2221) ; return|callee = EXN _t$2227update:397:org.junit.runner.Description* ; _t$2227|->{}alloc:java.lang.IllegalArgumentException; _t$2219|->{}formal:java.lang.String( sub ); _t$2220|->{name:_t$2219formal(z)}formal(z):java.lang.Class( sub ); _t$2221|->{clazz:_t$2220formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$2222|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$2222formal, filteredChildren:nullformal(z), testClass:_t$2221formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268(val$5); RET < boolean List.isEmpty() > (0) pi2: _t$2219 != null; _t$2219 != ""; _t$2220 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1255initial:org.junit.runners.model.Statement*; $T0_31 = n$1256initial:void; $irvar1 = n$1257initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1258initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$2223formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{childrenLock:_t$2222rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$2221rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$2222|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$2221|->{clazz:_t$2220rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2220|->{name:_t$2219rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2219|->{}rearrange:(z)394:java.lang.String( sub ) do_imply n$8 _t$2223 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1255initial:org.junit.runners.model.Statement*; $T0_31 = n$1256initial:void; $irvar1 = n$1257initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1258initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$2223 = n$8] |- n$8|->{childrenLock:_t$2222rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$2221rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$2222|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$2221|->{clazz:_t$2220rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2220|->{name:_t$2219rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2219|->{}rearrange:(z)394:java.lang.String( sub ) do_imply val$2 null do_imply val$3 _t$2221 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1255initial:org.junit.runners.model.Statement*; $T0_31 = n$1256initial:void; $irvar1 = n$1257initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1258initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$2221 = val$3; _t$2222 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$2223 = n$8 val$2 = null MISSING FLD: n$8|->{childrenLock:_t$2222rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); val$3|->{clazz:_t$2220rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2220|->{name:_t$2219rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2219|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply null _t$2220 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1255initial:org.junit.runners.model.Statement*; $T0_31 = n$1256initial:void; $irvar1 = n$1257initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1258initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$2220 = null; _t$2221 = val$3; _t$2222 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$2223 = n$8 val$2 = null MISSING FLD: n$8|->{childrenLock:_t$2222rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); null|->{name:_t$2219rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2219|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1255initial:org.junit.runners.model.Statement*; $T0_31 = n$1256initial:void; $irvar1 = n$1257initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1258initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$2220 = null; _t$2221 = val$3; _t$2222 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$2223 = n$8 val$2 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$2222rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- null|->{name:_t$2219rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2219|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1255initial:org.junit.runners.model.Statement*; $T0_31 = n$1256initial:void; $irvar1 = n$1257initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1258initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$2219 = @f$2; _t$2220 = null; _t$2221 = val$3; _t$2222 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$2223 = n$8 val$2 = null* null|->{name:_t$2219rearrange:(z)15}rearrange:394:java.lang.Class( sub ); %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$2222rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- @f$2|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1255initial:org.junit.runners.model.Statement*; $T0_31 = n$1256initial:void; $irvar1 = n$1257initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1258initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$2219 = @f$2; _t$2220 = null; _t$2221 = val$3; _t$2222 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$2223 = n$8 val$2 = null* @f$2|->{}rearrange:(z)394:java.lang.String( sub ); null|->{name:_t$2219rearrange:(z)15}rearrange:394:java.lang.Class( sub ); %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$2222rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] imply_pi: adding missing atom _t$2219 != "" Result of Abduction SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1255initial:org.junit.runners.model.Statement*; $T0_31 = n$1256initial:void; $irvar1 = n$1257initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1258initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$2219 = @f$2; _t$2220 = null; _t$2221 = val$3; _t$2222 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$2223 = n$8 _t$2219 != ""; val$2 = null* @f$2|->{}rearrange:(z)394:java.lang.String( sub ); null|->{name:_t$2219rearrange:(z)15}rearrange:394:java.lang.Class( sub ); %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$2222rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- @f$2 != null; @f$2 != ""; null != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; @f$2|->{}rearrange:(z)394:java.lang.String( sub ); null|->{name:@f$2rearrange:(z)15}rearrange:394:java.lang.Class( sub ); val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:%path%n8_org.junit.runners.ParentRunner.childrenLock$-3rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE explain_dereference_as_caller_expression _t$2220: cannot explain None found error in dereference spec_pre: _t$2219 != null; _t$2219 != ""; _t$2220 != null ; this|callee = _t$2223formal:org.junit.runners.ParentRunner*( sub ) ; _t$2219|->{}rearrange:(z)394:java.lang.String( sub ); _t$2220|->{name:_t$2219rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2221|->{clazz:_t$2220rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2222|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$2222rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$2221rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) exp _t$2220 desc: EXECUTING SPEC 5/5 ACTUAL PRECONDITION = val$1 = old_this ; (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1255initial:org.junit.runners.model.Statement*; $T0_31 = n$1256initial:void; $irvar1 = n$1257initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1258initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$2228 != null; _t$2228 != ""; _t$2229 != null; _t$2231 != null ; this|callee = _t$2232formal:org.junit.runners.ParentRunner*( sub ) ; _t$2228|->{}rearrange:(z)394:java.lang.String( sub ); _t$2229|->{name:_t$2228rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2230|->{clazz:_t$2229rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2231|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:_t$2231rearrange:(z)530, testClass:_t$2230rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$2228 != null; _t$2228 != ""; _t$2229 != null; _t$2231 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$2233); MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(return|callee); UND < Annotation[] Class.getAnnotations() > :216(_t$2235); RET < Annotation[] TestClass.getAnnotations() > (_t$2235); RET < List ParentRunner.getFilteredChildren() > (_t$2231); RET < Class TestClass.getJavaClass() > (_t$2229); RET < String Class.getName() > (_t$2228); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2235); RET < TestClass ParentRunner.getTestClass() > (_t$2230) ; return|callee = _t$2234update:403:org.junit.runner.Description* ; _t$2233|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; return|callee|->{fAnnotations:_t$2235update:397, fChildren:_t$2233update:(z)397, fDisplayName:_t$2228update:397, fTestClass:_t$2229update:397, fUniqueId:_t$2228update:397}formal(z):org.junit.runner.Description; _t$2228|->{}formal:java.lang.String( sub ); _t$2229|->{name:_t$2228formal(z)}formal(z):java.lang.Class( sub ); _t$2230|->{clazz:_t$2229formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$2231|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$2231formal(z), testClass:_t$2230formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$2228 != null; _t$2228 != ""; _t$2229 != null; _t$2231 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$2234); RET < Class TestClass.getJavaClass() > (_t$2229); RET < String Class.getName() > (_t$2228); RET < TestClass ParentRunner.getTestClass() > (_t$2230) ; return|callee = EXN _t$2234update:397:org.junit.runner.Description* ; _t$2234|->{}alloc:java.lang.IllegalArgumentException; _t$2228|->{}formal:java.lang.String( sub ); _t$2229|->{name:_t$2228formal(z)}formal(z):java.lang.Class( sub ); _t$2230|->{clazz:_t$2229formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$2231|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$2231formal(z), testClass:_t$2230formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268(val$5); RET < boolean List.isEmpty() > (0) pi2: _t$2228 != null; _t$2228 != ""; _t$2229 != null; _t$2231 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1255initial:org.junit.runners.model.Statement*; $T0_31 = n$1256initial:void; $irvar1 = n$1257initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1258initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$2232formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{filteredChildren:_t$2231rearrange:(z)530, testClass:_t$2230rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$2231|->{}rearrange:400:java.util.List( sub ); _t$2230|->{clazz:_t$2229rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2229|->{name:_t$2228rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2228|->{}rearrange:(z)394:java.lang.String( sub ) do_imply n$8 _t$2232 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1255initial:org.junit.runners.model.Statement*; $T0_31 = n$1256initial:void; $irvar1 = n$1257initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1258initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$2232 = n$8] |- n$8|->{filteredChildren:_t$2231rearrange:(z)530, testClass:_t$2230rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$2231|->{}rearrange:400:java.util.List( sub ); _t$2230|->{clazz:_t$2229rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2229|->{name:_t$2228rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2228|->{}rearrange:(z)394:java.lang.String( sub ) do_imply val$2 _t$2231 do_imply val$3 _t$2230 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1255initial:org.junit.runners.model.Statement*; $T0_31 = n$1256initial:void; $irvar1 = n$1257initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1258initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$2230 = val$3; _t$2231 = val$2; _t$2232 = n$8] |- val$2|->{}rearrange:400:java.util.List( sub ); val$3|->{clazz:_t$2229rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2229|->{name:_t$2228rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2228|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply null _t$2229 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1255initial:org.junit.runners.model.Statement*; $T0_31 = n$1256initial:void; $irvar1 = n$1257initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1258initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$2229 = null; _t$2230 = val$3; _t$2231 = val$2; _t$2232 = n$8] |- val$2|->{}rearrange:400:java.util.List( sub ); null|->{name:_t$2228rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2228|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1255initial:org.junit.runners.model.Statement*; $T0_31 = n$1256initial:void; $irvar1 = n$1257initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1258initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ) [SUB: val$1 = n$8; _t$2229 = null; _t$2230 = val$3; _t$2231 = val$2; _t$2232 = n$8] |- null|->{name:_t$2228rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2228|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1255initial:org.junit.runners.model.Statement*; $T0_31 = n$1256initial:void; $irvar1 = n$1257initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1258initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ) [SUB: val$1 = n$8; _t$2228 = @f$3; _t$2229 = null; _t$2230 = val$3; _t$2231 = val$2; _t$2232 = n$8 null|->{name:_t$2228rearrange:(z)15}rearrange:394:java.lang.Class( sub )] |- @f$3|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1255initial:org.junit.runners.model.Statement*; $T0_31 = n$1256initial:void; $irvar1 = n$1257initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1258initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ) [SUB: val$1 = n$8; _t$2228 = @f$3; _t$2229 = null; _t$2230 = val$3; _t$2231 = val$2; _t$2232 = n$8 @f$3|->{}rearrange:(z)394:java.lang.String( sub ); null|->{name:_t$2228rearrange:(z)15}rearrange:394:java.lang.Class( sub )] |- [FRAME TYPING: val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] imply_pi: adding missing atom _t$2228 != "" imply_pi: adding missing atom _t$2229 != null Result of Abduction SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1255initial:org.junit.runners.model.Statement*; $T0_31 = n$1256initial:void; $irvar1 = n$1257initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1258initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$2228 = @f$3; _t$2229 = null; _t$2230 = val$3; _t$2231 = val$2; _t$2232 = n$8 _t$2229 != null; _t$2228 != ""* @f$3|->{}rearrange:(z)394:java.lang.String( sub ); null|->{name:_t$2228rearrange:(z)15}rearrange:394:java.lang.Class( sub )] |- @f$3 != null; @f$3 != ""; null != null; val$2 != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; @f$3|->{}rearrange:(z)394:java.lang.String( sub ); null|->{name:@f$3rearrange:(z)15}rearrange:394:java.lang.Class( sub ); val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); val$2|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:val$2rearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE explain_dereference_as_caller_expression _t$2229: cannot explain None found error in dereference spec_pre: _t$2228 != null; _t$2228 != ""; _t$2229 != null; _t$2231 != null ; this|callee = _t$2232formal:org.junit.runners.ParentRunner*( sub ) ; _t$2228|->{}rearrange:(z)394:java.lang.String( sub ); _t$2229|->{name:_t$2228rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2230|->{clazz:_t$2229rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2231|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:_t$2231rearrange:(z)530, testClass:_t$2230rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) exp _t$2229 desc: Instruction Returns PROP 1 of 2: val$1 = old_this ; (-1 < val$6); val$6 != 1; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$5); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$4); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$4); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$5|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$4|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$10|->{fAnnotations:_t$4update:270, fChildren:_t$5update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: val$1 = old_this ; (-1 < val$6); val$6 != 1; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (n$10); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction *&$irvar1:org.junit.runner.Description*=n$10 [line 270] in vpath_find exp:n$1259 vpath_find: cannot find n$1259 in vpath_find exp:n$10 vpath_find: cannot find n$10 in vpath_find exp:n$1260 vpath_find: cannot find n$1260 .... Rearrangement Start .... Exp: &$irvar1 Prop: val$1 = old_this ; (-1 < val$6); val$6 != 1; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$1259); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(n$1260); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (n$1260); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1261initial:org.junit.runners.model.Statement*; $T0_31 = n$1262initial:void; $irvar1 = n$1263initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1264initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$1260|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; n$1259|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:n$1260update:270, fChildren:n$1259update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 1: val$1 = old_this ; (-1 < val$6); val$6 != 1; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$4initial:org.junit.runners.model.Statement*; $T0_31 = _t$3initial:void; $irvar1 = n$10update:270:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$2|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$1|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); $irvar1|->{fAnnotations:_t$1update:270, fChildren:_t$2update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Skipping instr *&$irvar1:org.junit.runner.Description*=n$10 [line 270] due to exception Instruction NULLIFY(&this); [line 270] in vpath_find exp:_t$2 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$2 in vpath_find exp:n$10 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find n$10 in vpath_find exp:_t$1 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$1 Instruction Returns PROP 1 of 1: val$1 = old_this ; (-1 < val$6); val$6 != 1; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$4initial:org.junit.runners.model.Statement*; $T0_31 = _t$3initial:void; $irvar1 = n$10update:270:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$2|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$1|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); $irvar1|->{fAnnotations:_t$1update:270, fChildren:_t$2update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction NULLIFY(&this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: val$1 = old_this ; (-1 < val$6); val$6 != 1; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (n$10); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction EXIT_SCOPE(_,n$8,n$10,this); [line 270] in vpath_find exp:_t$2 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$2 in vpath_find exp:n$10 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find n$10 in vpath_find exp:_t$1 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$1 Instruction Returns PROP 1 of 1: (-1 < val$6); val$6 != 1; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$5initial:org.junit.runners.model.Statement*; $T0_31 = _t$4initial:void; $irvar1 = _t$1update:270:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$3|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$2|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $irvar1|->{fAnnotations:_t$2update:270, fChildren:_t$3update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction EXIT_SCOPE(_,n$8,n$10,this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: (-1 < val$6); val$6 != 1; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (_t$4); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) .... After Symbolic Execution .... PROP 1 of 2: (-1 < val$6); val$6 != 1; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$5initial:org.junit.runners.model.Statement*; $T0_31 = _t$4initial:void; $irvar1 = _t$1update:270:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$3|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$2|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $irvar1|->{fAnnotations:_t$2update:270, fChildren:_t$3update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: (-1 < val$6); val$6 != 1; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (_t$4); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub )
node10#session145(270) biabduction **** [RE:Pending] Statement ParentRunner.withClassRules(RunBefores) Node: 10, Procedure: Statement ParentRunner.withClassRules(RunBefores), Todo: 1 **** PROP 1 of 1: (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = val$1formal:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) .... Instructions: .... n$8=*&this:org.junit.runners.ParentRunner* [line 270]; _=*n$8:org.junit.runners.ParentRunner [line 270]; n$10=_fun_Description ParentRunner.getDescription()(n$8:org.junit.runners.ParentRunner*) virtual [line 270]; *&$irvar1:org.junit.runner.Description*=n$10 [line 270]; NULLIFY(&this); [line 270]; EXIT_SCOPE(_,n$8,n$10,this); [line 270]; Processing prop 1/1 Instruction n$8=*&this:org.junit.runners.ParentRunner* [line 270] .... Rearrangement Start .... Exp: &this Prop: (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1386initial:org.junit.runners.model.Statement*; $T0_31 = n$1387initial:void; $irvar1 = n$1388initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1389initial:void; this = val$1formal:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 1: val$1 = old_this ; (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction _=*n$8:org.junit.runners.ParentRunner [line 270] .... Rearrangement Start .... Exp: n$8 Prop: val$1 = old_this ; (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1390initial:org.junit.runners.model.Statement*; $T0_31 = n$1391initial:void; $irvar1 = n$1392initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1393initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 1: val$1 = old_this ; (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction n$10=_fun_Description ParentRunner.getDescription()(n$8:org.junit.runners.ParentRunner*) virtual [line 270] Found 5 specs for function org.junit.runners.ParentRunner.getDescription():org.junit.runner.Description START EXECUTING SPECS FOR org.junit.runners.ParentRunner.getDescription():org.junit.runner.Description from state val$1 = old_this ; (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1394initial:org.junit.runners.model.Statement*; $T0_31 = n$1395initial:void; $irvar1 = n$1396initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1397initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) EXECUTING SPEC 1/5 ACTUAL PRECONDITION = val$1 = old_this ; (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1394initial:org.junit.runners.model.Statement*; $T0_31 = n$1395initial:void; $irvar1 = n$1396initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1397initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: this|callee = _t$2454formal:org.junit.runners.ParentRunner*( sub ) ; _t$2452|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2453|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$2453rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$2452rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$2455); MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(return|callee); MEMna < Annotation[] ParentRunner.getRunnerAnnotations():395 > {vpath: }(_t$2456); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$2458); LOCKED(_t$2453); RET < Annotation[] TestClass.getAnnotations() > (_t$2456); RET < List ParentRunner.getFilteredChildren() > (_t$2458); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2456); RET < TestClass ParentRunner.getTestClass() > (_t$2452) ; return|callee = _t$2457update:403:org.junit.runner.Description* ; _t$2455|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$2456|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$2456update:395, fChildren:_t$2455update:(z)395, fDisplayName:"null"update:395, fTestClass:nullupdate:395, fUniqueId:"null"update:395}formal(z):org.junit.runner.Description; _t$2452|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$2453|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$2453formal, filteredChildren:_t$2458update:(z)400, testClass:_t$2452formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$2458); RET < TestClass ParentRunner.getTestClass() > (_t$2452) ; return|callee = EXN _t$2458update:395:org.junit.runner.Description* ; _t$2458|->{}alloc:java.lang.IllegalArgumentException; _t$2452|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$2453|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$2453formal, filteredChildren:nullformal(z), testClass:_t$2452formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268(val$5); RET < boolean List.isEmpty() > (0) pi2: returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1394initial:org.junit.runners.model.Statement*; $T0_31 = n$1395initial:void; $irvar1 = n$1396initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1397initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$2454formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{childrenLock:_t$2453rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$2452rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$2453|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$2452|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply n$8 _t$2454 Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1394initial:org.junit.runners.model.Statement*; $T0_31 = n$1395initial:void; $irvar1 = n$1396initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1397initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$2454 = n$8] |- n$8|->{childrenLock:_t$2453rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$2452rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$2453|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$2452|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply val$2 null do_imply val$3 _t$2452 Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1394initial:org.junit.runners.model.Statement*; $T0_31 = n$1395initial:void; $irvar1 = n$1396initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1397initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$2452 = val$3; _t$2453 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$2454 = n$8 val$2 = null MISSING FLD: n$8|->{childrenLock:_t$2453rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply null null Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1394initial:org.junit.runners.model.Statement*; $T0_31 = n$1395initial:void; $irvar1 = n$1396initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1397initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$2452 = val$3; _t$2453 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$2454 = n$8 val$2 = null MISSING FLD: n$8|->{childrenLock:_t$2453rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1394initial:org.junit.runners.model.Statement*; $T0_31 = n$1395initial:void; $irvar1 = n$1396initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1397initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$2452 = val$3; _t$2453 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$2454 = n$8 val$2 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$2453rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Result of Abduction SUB: val$1 = n$8 (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1394initial:org.junit.runners.model.Statement*; $T0_31 = n$1395initial:void; $irvar1 = n$1396initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1397initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$2452 = val$3; _t$2453 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$2454 = n$8 val$2 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$2453rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:%path%n8_org.junit.runners.ParentRunner.childrenLock$-3rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE WARNING: Missing fields hpred has non-footprint vars: n$8|->{childrenLock:%path%n8_org.junit.runners.ParentRunner.childrenLock$-3rearrange:531}formal(z):org.junit.runners.ParentRunner( sub ) Implication error: missing_sigma not empty in re-execution EXECUTING SPEC 2/5 ACTUAL PRECONDITION = val$1 = old_this ; (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1394initial:org.junit.runners.model.Statement*; $T0_31 = n$1395initial:void; $irvar1 = n$1396initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1397initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$2460 != null ; this|callee = _t$2461formal:org.junit.runners.ParentRunner*( sub ) ; _t$2459|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2460|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:_t$2460rearrange:(z)530, testClass:_t$2459rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$2460 != null; MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$2462); MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(return|callee); MEMna < Annotation[] ParentRunner.getRunnerAnnotations():395 > {vpath: }(_t$2463); RET < Annotation[] TestClass.getAnnotations() > (_t$2463); RET < List ParentRunner.getFilteredChildren() > (_t$2460); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2463); RET < TestClass ParentRunner.getTestClass() > (_t$2459) ; return|callee = _t$2464update:403:org.junit.runner.Description* ; _t$2462|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$2463|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$2463update:395, fChildren:_t$2462update:(z)395, fDisplayName:"null"update:395, fTestClass:nullupdate:395, fUniqueId:"null"update:395}formal(z):org.junit.runner.Description; _t$2459|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$2460|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$2460formal(z), testClass:_t$2459formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$2460 != null; MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$2464); RET < TestClass ParentRunner.getTestClass() > (_t$2459) ; return|callee = EXN _t$2464update:395:org.junit.runner.Description* ; _t$2464|->{}alloc:java.lang.IllegalArgumentException; _t$2459|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$2460|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$2460formal(z), testClass:_t$2459formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268(val$5); RET < boolean List.isEmpty() > (0) pi2: _t$2460 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1394initial:org.junit.runners.model.Statement*; $T0_31 = n$1395initial:void; $irvar1 = n$1396initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1397initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$2461formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{filteredChildren:_t$2460rearrange:(z)530, testClass:_t$2459rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$2460|->{}rearrange:400:java.util.List( sub ); _t$2459|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply n$8 _t$2461 Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1394initial:org.junit.runners.model.Statement*; $T0_31 = n$1395initial:void; $irvar1 = n$1396initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1397initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$2461 = n$8] |- n$8|->{filteredChildren:_t$2460rearrange:(z)530, testClass:_t$2459rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$2460|->{}rearrange:400:java.util.List( sub ); _t$2459|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply val$2 _t$2460 do_imply val$3 _t$2459 Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1394initial:org.junit.runners.model.Statement*; $T0_31 = n$1395initial:void; $irvar1 = n$1396initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1397initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$2459 = val$3; _t$2460 = val$2; _t$2461 = n$8] |- val$2|->{}rearrange:400:java.util.List( sub ); val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply null null Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1394initial:org.junit.runners.model.Statement*; $T0_31 = n$1395initial:void; $irvar1 = n$1396initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1397initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$2459 = val$3; _t$2460 = val$2; _t$2461 = n$8] |- val$2|->{}rearrange:400:java.util.List( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1394initial:org.junit.runners.model.Statement*; $T0_31 = n$1395initial:void; $irvar1 = n$1396initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1397initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [SUB: val$1 = n$8; _t$2459 = val$3; _t$2460 = val$2; _t$2461 = n$8] |- [FRAME TYPING: val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Result of Abduction SUB: val$1 = n$8 (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1394initial:org.junit.runners.model.Statement*; $T0_31 = n$1395initial:void; $irvar1 = n$1396initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1397initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$2459 = val$3; _t$2460 = val$2; _t$2461 = n$8] |- val$2 != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); val$2|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:val$2rearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE in vpath_find exp:_t$2462 vpath_find: cannot find _t$2462 in vpath_find exp:_t$2464 vpath_find: cannot find _t$2464 in vpath_find exp:_t$2463 vpath_find: cannot find _t$2463 in vpath_find exp:_t$2464 vpath_find: cannot find _t$2464 New footprint: Frame fld: Frame typ: val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) Missing fld: Instantiated frame: val$5|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); &classRules|->val$5update:268:java.util.List*; &$RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->val$5formal:java.util.List*( sub ); &$irvar0|->0nullify:void; &return|->n$1394initial:org.junit.runners.model.Statement*; &$T0_31|->n$1395initial:void; &$irvar1|->n$1396initial:void; &statement|->val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); &old_statement|->val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); &$irvar2|->n$1397initial:void; &this|->n$8formal:org.junit.runners.ParentRunner*( sub ); &old_this|->n$8formal:org.junit.runners.ParentRunner*( sub ) Instantiated post: PROP 1 of 2: val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2462); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(return|callee); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$2463); RET < Annotation[] TestClass.getAnnotations() > (_t$2463); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2463); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = _t$2464update:270:org.junit.runner.Description* ; _t$2462|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$2463|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$2463update:270, fChildren:_t$2462update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$8|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2464); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = EXN _t$2464update:270:org.junit.runner.Description* ; _t$2464|->{}alloc:java.lang.IllegalArgumentException; val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$8|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** RESULTS FUNCTION CALL ******* PROP 1 of 2: val$1 = old_this ; (val$6 <= -1); val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$0); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1394initial:org.junit.runners.model.Statement*; $T0_31 = n$1395initial:void; $irvar1 = n$1396initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1397initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$1|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$0|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$10|->{fAnnotations:_t$0update:270, fChildren:_t$1update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: val$1 = old_this ; (val$6 <= -1); val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = n$1395initial:void; $irvar1 = n$1396initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1397initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** END RESULTS FUNCTION CALL ******* pvar: classRules found error in dereference spec_pre: val$1 = old_this ; (val$6 <= -1); val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2462); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$2463); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2463); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1394initial:org.junit.runners.model.Statement*; $T0_31 = n$1395initial:void; $irvar1 = n$1396initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1397initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$2463|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; _t$2462|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$10|->{fAnnotations:_t$2463update:270, fChildren:_t$2462update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) exp val$5 desc: pvar: classRules found error in dereference spec_pre: val$1 = old_this ; (val$6 <= -1); val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2464); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$2464update:270:org.junit.runners.model.Statement*; $T0_31 = n$1395initial:void; $irvar1 = n$1396initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1397initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$2464|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) exp val$5 desc: Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] EXECUTING SPEC 3/5 ACTUAL PRECONDITION = val$1 = old_this ; (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1394initial:org.junit.runners.model.Statement*; $T0_31 = n$1395initial:void; $irvar1 = n$1396initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1397initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$2465 != null ; this|callee = _t$2467formal:org.junit.runners.ParentRunner*( sub ) ; _t$2465|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2466|->{clazz:_t$2465rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:_t$2466rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) POST 1 of 1: _t$2465 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$2468); RET < Class TestClass.getJavaClass() > (_t$2465); RET < TestClass ParentRunner.getTestClass() > (_t$2466) ; return|callee = EXN _t$2468update:397:org.junit.runner.Description* ; _t$2468|->{}alloc:java.lang.IllegalArgumentException; _t$2465|->{name:""formal(z)}formal(z):java.lang.Class( sub ); _t$2466|->{clazz:_t$2465formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:_t$2466formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268(val$5); RET < boolean List.isEmpty() > (0) pi2: _t$2465 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1394initial:org.junit.runners.model.Statement*; $T0_31 = n$1395initial:void; $irvar1 = n$1396initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1397initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$2467formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{testClass:_t$2466rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$2466|->{clazz:_t$2465rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2465|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1394initial:org.junit.runners.model.Statement*; $T0_31 = n$1395initial:void; $irvar1 = n$1396initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1397initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$2467formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{testClass:_t$2466rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$2466|->{clazz:_t$2465rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2465|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: ""|->{count:_t$2486none, hash:_t$2487none, offset:_t$2488none, value:_t$2489none}none:java.lang.String] [FRAME TYPING: "": java.lang.String ] do_imply n$8 _t$2467 Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1394initial:org.junit.runners.model.Statement*; $T0_31 = n$1395initial:void; $irvar1 = n$1396initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1397initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$2467 = n$8] |- n$8|->{testClass:_t$2466rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$2466|->{clazz:_t$2465rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2465|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: ""|->{count:_t$2486none, hash:_t$2487none, offset:_t$2488none, value:_t$2489none}none:java.lang.String] [FRAME TYPING: "": java.lang.String ] do_imply val$3 _t$2466 Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1394initial:org.junit.runners.model.Statement*; $T0_31 = n$1395initial:void; $irvar1 = n$1396initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1397initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$2466 = val$3; _t$2467 = n$8] |- val$3|->{clazz:_t$2465rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2465|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: n$8|->{filteredChildren:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$2486none, hash:_t$2487none, offset:_t$2488none, value:_t$2489none}none:java.lang.String] [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] do_imply null _t$2465 Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1394initial:org.junit.runners.model.Statement*; $T0_31 = n$1395initial:void; $irvar1 = n$1396initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1397initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$2465 = null; _t$2466 = val$3; _t$2467 = n$8] |- null|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: n$8|->{filteredChildren:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$2486none, hash:_t$2487none, offset:_t$2488none, value:_t$2489none}none:java.lang.String] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] Final Implication SUB: val$1 = n$8 (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1394initial:org.junit.runners.model.Statement*; $T0_31 = n$1395initial:void; $irvar1 = n$1396initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1397initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$2465 = null; _t$2466 = val$3; _t$2467 = n$8 @f$4 = ""* null|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub )] |- [FRAME FLD: n$8|->{filteredChildren:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$2486none, hash:_t$2487none, offset:_t$2488none, value:_t$2489none}none:java.lang.String] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] imply_pi: adding missing atom _t$2465 != null Result of Abduction SUB: val$1 = n$8 (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1394initial:org.junit.runners.model.Statement*; $T0_31 = n$1395initial:void; $irvar1 = n$1396initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1397initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$2465 = null; _t$2466 = val$3; _t$2467 = n$8 _t$2465 != null; @f$4 = ""* null|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub )] |- null != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; null|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:val$3rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME FLD: n$8|->{filteredChildren:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$2486none, hash:_t$2487none, offset:_t$2488none, value:_t$2489none}none:java.lang.String] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] returning TRUE explain_dereference_as_caller_expression _t$2465: cannot explain None found error in dereference spec_pre: _t$2465 != null ; this|callee = _t$2467formal:org.junit.runners.ParentRunner*( sub ) ; _t$2465|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2466|->{clazz:_t$2465rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:_t$2466rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) exp _t$2465 desc: EXECUTING SPEC 4/5 ACTUAL PRECONDITION = val$1 = old_this ; (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1394initial:org.junit.runners.model.Statement*; $T0_31 = n$1395initial:void; $irvar1 = n$1396initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1397initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$2469 != null; _t$2469 != ""; _t$2470 != null ; this|callee = _t$2473formal:org.junit.runners.ParentRunner*( sub ) ; _t$2469|->{}rearrange:(z)394:java.lang.String( sub ); _t$2470|->{name:_t$2469rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2471|->{clazz:_t$2470rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2472|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$2472rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$2471rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$2469 != null; _t$2469 != ""; _t$2470 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$2474); MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(return|callee); UND < Annotation[] Class.getAnnotations() > :216(_t$2476); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$2477); LOCKED(_t$2472); RET < Annotation[] TestClass.getAnnotations() > (_t$2476); RET < List ParentRunner.getFilteredChildren() > (_t$2477); RET < Class TestClass.getJavaClass() > (_t$2470); RET < String Class.getName() > (_t$2469); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2476); RET < TestClass ParentRunner.getTestClass() > (_t$2471) ; return|callee = _t$2475update:403:org.junit.runner.Description* ; _t$2474|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; return|callee|->{fAnnotations:_t$2476update:397, fChildren:_t$2474update:(z)397, fDisplayName:_t$2469update:397, fTestClass:_t$2470update:397, fUniqueId:_t$2469update:397}formal(z):org.junit.runner.Description; _t$2469|->{}formal:java.lang.String( sub ); _t$2470|->{name:_t$2469formal(z)}formal(z):java.lang.Class( sub ); _t$2471|->{clazz:_t$2470formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$2472|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$2472formal, filteredChildren:_t$2477update:(z)400, testClass:_t$2471formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$2469 != null; _t$2469 != ""; _t$2470 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$2477); RET < Class TestClass.getJavaClass() > (_t$2470); RET < String Class.getName() > (_t$2469); RET < TestClass ParentRunner.getTestClass() > (_t$2471) ; return|callee = EXN _t$2477update:397:org.junit.runner.Description* ; _t$2477|->{}alloc:java.lang.IllegalArgumentException; _t$2469|->{}formal:java.lang.String( sub ); _t$2470|->{name:_t$2469formal(z)}formal(z):java.lang.Class( sub ); _t$2471|->{clazz:_t$2470formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$2472|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$2472formal, filteredChildren:nullformal(z), testClass:_t$2471formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268(val$5); RET < boolean List.isEmpty() > (0) pi2: _t$2469 != null; _t$2469 != ""; _t$2470 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1394initial:org.junit.runners.model.Statement*; $T0_31 = n$1395initial:void; $irvar1 = n$1396initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1397initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$2473formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{childrenLock:_t$2472rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$2471rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$2472|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$2471|->{clazz:_t$2470rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2470|->{name:_t$2469rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2469|->{}rearrange:(z)394:java.lang.String( sub ) do_imply n$8 _t$2473 Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1394initial:org.junit.runners.model.Statement*; $T0_31 = n$1395initial:void; $irvar1 = n$1396initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1397initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$2473 = n$8] |- n$8|->{childrenLock:_t$2472rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$2471rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$2472|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$2471|->{clazz:_t$2470rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2470|->{name:_t$2469rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2469|->{}rearrange:(z)394:java.lang.String( sub ) do_imply val$2 null do_imply val$3 _t$2471 Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1394initial:org.junit.runners.model.Statement*; $T0_31 = n$1395initial:void; $irvar1 = n$1396initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1397initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$2471 = val$3; _t$2472 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$2473 = n$8 val$2 = null MISSING FLD: n$8|->{childrenLock:_t$2472rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); val$3|->{clazz:_t$2470rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2470|->{name:_t$2469rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2469|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply null _t$2470 Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1394initial:org.junit.runners.model.Statement*; $T0_31 = n$1395initial:void; $irvar1 = n$1396initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1397initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$2470 = null; _t$2471 = val$3; _t$2472 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$2473 = n$8 val$2 = null MISSING FLD: n$8|->{childrenLock:_t$2472rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); null|->{name:_t$2469rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2469|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1394initial:org.junit.runners.model.Statement*; $T0_31 = n$1395initial:void; $irvar1 = n$1396initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1397initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$2470 = null; _t$2471 = val$3; _t$2472 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$2473 = n$8 val$2 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$2472rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- null|->{name:_t$2469rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2469|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1394initial:org.junit.runners.model.Statement*; $T0_31 = n$1395initial:void; $irvar1 = n$1396initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1397initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$2469 = @f$5; _t$2470 = null; _t$2471 = val$3; _t$2472 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$2473 = n$8 val$2 = null* null|->{name:_t$2469rearrange:(z)15}rearrange:394:java.lang.Class( sub ); %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$2472rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- @f$5|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1394initial:org.junit.runners.model.Statement*; $T0_31 = n$1395initial:void; $irvar1 = n$1396initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1397initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$2469 = @f$5; _t$2470 = null; _t$2471 = val$3; _t$2472 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$2473 = n$8 val$2 = null* @f$5|->{}rearrange:(z)394:java.lang.String( sub ); null|->{name:_t$2469rearrange:(z)15}rearrange:394:java.lang.Class( sub ); %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$2472rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] imply_pi: adding missing atom _t$2469 != "" Result of Abduction SUB: val$1 = n$8 (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1394initial:org.junit.runners.model.Statement*; $T0_31 = n$1395initial:void; $irvar1 = n$1396initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1397initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$2469 = @f$5; _t$2470 = null; _t$2471 = val$3; _t$2472 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$2473 = n$8 _t$2469 != ""; val$2 = null* @f$5|->{}rearrange:(z)394:java.lang.String( sub ); null|->{name:_t$2469rearrange:(z)15}rearrange:394:java.lang.Class( sub ); %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$2472rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- @f$5 != null; @f$5 != ""; null != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; @f$5|->{}rearrange:(z)394:java.lang.String( sub ); null|->{name:@f$5rearrange:(z)15}rearrange:394:java.lang.Class( sub ); val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:%path%n8_org.junit.runners.ParentRunner.childrenLock$-3rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE explain_dereference_as_caller_expression _t$2470: cannot explain None found error in dereference spec_pre: _t$2469 != null; _t$2469 != ""; _t$2470 != null ; this|callee = _t$2473formal:org.junit.runners.ParentRunner*( sub ) ; _t$2469|->{}rearrange:(z)394:java.lang.String( sub ); _t$2470|->{name:_t$2469rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2471|->{clazz:_t$2470rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2472|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$2472rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$2471rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) exp _t$2470 desc: EXECUTING SPEC 5/5 ACTUAL PRECONDITION = val$1 = old_this ; (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1394initial:org.junit.runners.model.Statement*; $T0_31 = n$1395initial:void; $irvar1 = n$1396initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1397initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$2478 != null; _t$2478 != ""; _t$2479 != null; _t$2481 != null ; this|callee = _t$2482formal:org.junit.runners.ParentRunner*( sub ) ; _t$2478|->{}rearrange:(z)394:java.lang.String( sub ); _t$2479|->{name:_t$2478rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2480|->{clazz:_t$2479rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2481|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:_t$2481rearrange:(z)530, testClass:_t$2480rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$2478 != null; _t$2478 != ""; _t$2479 != null; _t$2481 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$2483); MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(return|callee); UND < Annotation[] Class.getAnnotations() > :216(_t$2485); RET < Annotation[] TestClass.getAnnotations() > (_t$2485); RET < List ParentRunner.getFilteredChildren() > (_t$2481); RET < Class TestClass.getJavaClass() > (_t$2479); RET < String Class.getName() > (_t$2478); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2485); RET < TestClass ParentRunner.getTestClass() > (_t$2480) ; return|callee = _t$2484update:403:org.junit.runner.Description* ; _t$2483|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; return|callee|->{fAnnotations:_t$2485update:397, fChildren:_t$2483update:(z)397, fDisplayName:_t$2478update:397, fTestClass:_t$2479update:397, fUniqueId:_t$2478update:397}formal(z):org.junit.runner.Description; _t$2478|->{}formal:java.lang.String( sub ); _t$2479|->{name:_t$2478formal(z)}formal(z):java.lang.Class( sub ); _t$2480|->{clazz:_t$2479formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$2481|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$2481formal(z), testClass:_t$2480formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$2478 != null; _t$2478 != ""; _t$2479 != null; _t$2481 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$2484); RET < Class TestClass.getJavaClass() > (_t$2479); RET < String Class.getName() > (_t$2478); RET < TestClass ParentRunner.getTestClass() > (_t$2480) ; return|callee = EXN _t$2484update:397:org.junit.runner.Description* ; _t$2484|->{}alloc:java.lang.IllegalArgumentException; _t$2478|->{}formal:java.lang.String( sub ); _t$2479|->{name:_t$2478formal(z)}formal(z):java.lang.Class( sub ); _t$2480|->{clazz:_t$2479formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$2481|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$2481formal(z), testClass:_t$2480formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268(val$5); RET < boolean List.isEmpty() > (0) pi2: _t$2478 != null; _t$2478 != ""; _t$2479 != null; _t$2481 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1394initial:org.junit.runners.model.Statement*; $T0_31 = n$1395initial:void; $irvar1 = n$1396initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1397initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$2482formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{filteredChildren:_t$2481rearrange:(z)530, testClass:_t$2480rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$2481|->{}rearrange:400:java.util.List( sub ); _t$2480|->{clazz:_t$2479rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2479|->{name:_t$2478rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2478|->{}rearrange:(z)394:java.lang.String( sub ) do_imply n$8 _t$2482 Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1394initial:org.junit.runners.model.Statement*; $T0_31 = n$1395initial:void; $irvar1 = n$1396initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1397initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$2482 = n$8] |- n$8|->{filteredChildren:_t$2481rearrange:(z)530, testClass:_t$2480rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$2481|->{}rearrange:400:java.util.List( sub ); _t$2480|->{clazz:_t$2479rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2479|->{name:_t$2478rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2478|->{}rearrange:(z)394:java.lang.String( sub ) do_imply val$2 _t$2481 do_imply val$3 _t$2480 Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1394initial:org.junit.runners.model.Statement*; $T0_31 = n$1395initial:void; $irvar1 = n$1396initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1397initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$2480 = val$3; _t$2481 = val$2; _t$2482 = n$8] |- val$2|->{}rearrange:400:java.util.List( sub ); val$3|->{clazz:_t$2479rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2479|->{name:_t$2478rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2478|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply null _t$2479 Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1394initial:org.junit.runners.model.Statement*; $T0_31 = n$1395initial:void; $irvar1 = n$1396initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1397initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$2479 = null; _t$2480 = val$3; _t$2481 = val$2; _t$2482 = n$8] |- val$2|->{}rearrange:400:java.util.List( sub ); null|->{name:_t$2478rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2478|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1394initial:org.junit.runners.model.Statement*; $T0_31 = n$1395initial:void; $irvar1 = n$1396initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1397initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [SUB: val$1 = n$8; _t$2479 = null; _t$2480 = val$3; _t$2481 = val$2; _t$2482 = n$8] |- null|->{name:_t$2478rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2478|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1394initial:org.junit.runners.model.Statement*; $T0_31 = n$1395initial:void; $irvar1 = n$1396initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1397initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [SUB: val$1 = n$8; _t$2478 = @f$6; _t$2479 = null; _t$2480 = val$3; _t$2481 = val$2; _t$2482 = n$8 null|->{name:_t$2478rearrange:(z)15}rearrange:394:java.lang.Class( sub )] |- @f$6|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1394initial:org.junit.runners.model.Statement*; $T0_31 = n$1395initial:void; $irvar1 = n$1396initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1397initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [SUB: val$1 = n$8; _t$2478 = @f$6; _t$2479 = null; _t$2480 = val$3; _t$2481 = val$2; _t$2482 = n$8 @f$6|->{}rearrange:(z)394:java.lang.String( sub ); null|->{name:_t$2478rearrange:(z)15}rearrange:394:java.lang.Class( sub )] |- [FRAME TYPING: val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] imply_pi: adding missing atom _t$2478 != "" imply_pi: adding missing atom _t$2479 != null Result of Abduction SUB: val$1 = n$8 (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1394initial:org.junit.runners.model.Statement*; $T0_31 = n$1395initial:void; $irvar1 = n$1396initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1397initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$2478 = @f$6; _t$2479 = null; _t$2480 = val$3; _t$2481 = val$2; _t$2482 = n$8 _t$2479 != null; _t$2478 != ""* @f$6|->{}rearrange:(z)394:java.lang.String( sub ); null|->{name:_t$2478rearrange:(z)15}rearrange:394:java.lang.Class( sub )] |- @f$6 != null; @f$6 != ""; null != null; val$2 != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; @f$6|->{}rearrange:(z)394:java.lang.String( sub ); null|->{name:@f$6rearrange:(z)15}rearrange:394:java.lang.Class( sub ); val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); val$2|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:val$2rearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE explain_dereference_as_caller_expression _t$2479: cannot explain None found error in dereference spec_pre: _t$2478 != null; _t$2478 != ""; _t$2479 != null; _t$2481 != null ; this|callee = _t$2482formal:org.junit.runners.ParentRunner*( sub ) ; _t$2478|->{}rearrange:(z)394:java.lang.String( sub ); _t$2479|->{name:_t$2478rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2480|->{clazz:_t$2479rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2481|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:_t$2481rearrange:(z)530, testClass:_t$2480rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) exp _t$2479 desc: Instruction Returns PROP 1 of 2: val$1 = old_this ; (val$6 <= -1); val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$5); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$4); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$4); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$5|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$4|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$10|->{fAnnotations:_t$4update:270, fChildren:_t$5update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: val$1 = old_this ; (val$6 <= -1); val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (n$10); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction *&$irvar1:org.junit.runner.Description*=n$10 [line 270] in vpath_find exp:n$1398 vpath_find: cannot find n$1398 in vpath_find exp:n$10 vpath_find: cannot find n$10 in vpath_find exp:n$1399 vpath_find: cannot find n$1399 .... Rearrangement Start .... Exp: &$irvar1 Prop: val$1 = old_this ; (val$6 <= -1); val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$1398); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(n$1399); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (n$1399); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1400initial:org.junit.runners.model.Statement*; $T0_31 = n$1401initial:void; $irvar1 = n$1402initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1403initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$1399|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; n$1398|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:n$1399update:270, fChildren:n$1398update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 1: val$1 = old_this ; (val$6 <= -1); val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$4initial:org.junit.runners.model.Statement*; $T0_31 = _t$3initial:void; $irvar1 = n$10update:270:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$2|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$1|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); $irvar1|->{fAnnotations:_t$1update:270, fChildren:_t$2update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Skipping instr *&$irvar1:org.junit.runner.Description*=n$10 [line 270] due to exception Instruction NULLIFY(&this); [line 270] in vpath_find exp:_t$2 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$2 in vpath_find exp:n$10 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find n$10 in vpath_find exp:_t$1 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$1 Instruction Returns PROP 1 of 1: val$1 = old_this ; (val$6 <= -1); val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$4initial:org.junit.runners.model.Statement*; $T0_31 = _t$3initial:void; $irvar1 = n$10update:270:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$2|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$1|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); $irvar1|->{fAnnotations:_t$1update:270, fChildren:_t$2update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction NULLIFY(&this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: val$1 = old_this ; (val$6 <= -1); val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (n$10); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction EXIT_SCOPE(_,n$8,n$10,this); [line 270] in vpath_find exp:_t$2 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$2 in vpath_find exp:n$10 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find n$10 in vpath_find exp:_t$1 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$1 Instruction Returns PROP 1 of 1: (val$6 <= -1); val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$5initial:org.junit.runners.model.Statement*; $T0_31 = _t$4initial:void; $irvar1 = _t$1update:270:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$3|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$2|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $irvar1|->{fAnnotations:_t$2update:270, fChildren:_t$3update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction EXIT_SCOPE(_,n$8,n$10,this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: (val$6 <= -1); val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (_t$4); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) .... After Symbolic Execution .... PROP 1 of 2: (val$6 <= -1); val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$5initial:org.junit.runners.model.Statement*; $T0_31 = _t$4initial:void; $irvar1 = _t$1update:270:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$3|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$2|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $irvar1|->{fAnnotations:_t$2update:270, fChildren:_t$3update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: (val$6 <= -1); val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (_t$4); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub )
node10#session160(270) biabduction **** [RE:Pending] Statement ParentRunner.withClassRules(RunBefores) Node: 10, Procedure: Statement ParentRunner.withClassRules(RunBefores), Todo: 1 **** PROP 1 of 1: (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = val$1formal:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) .... Instructions: .... n$8=*&this:org.junit.runners.ParentRunner* [line 270]; _=*n$8:org.junit.runners.ParentRunner [line 270]; n$10=_fun_Description ParentRunner.getDescription()(n$8:org.junit.runners.ParentRunner*) virtual [line 270]; *&$irvar1:org.junit.runner.Description*=n$10 [line 270]; NULLIFY(&this); [line 270]; EXIT_SCOPE(_,n$8,n$10,this); [line 270]; Processing prop 1/1 Instruction n$8=*&this:org.junit.runners.ParentRunner* [line 270] .... Rearrangement Start .... Exp: &this Prop: (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1534initial:org.junit.runners.model.Statement*; $T0_31 = n$1535initial:void; $irvar1 = n$1536initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1537initial:void; this = val$1formal:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 1: val$1 = old_this ; (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction _=*n$8:org.junit.runners.ParentRunner [line 270] .... Rearrangement Start .... Exp: n$8 Prop: val$1 = old_this ; (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1538initial:org.junit.runners.model.Statement*; $T0_31 = n$1539initial:void; $irvar1 = n$1540initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1541initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 1: val$1 = old_this ; (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction n$10=_fun_Description ParentRunner.getDescription()(n$8:org.junit.runners.ParentRunner*) virtual [line 270] Found 5 specs for function org.junit.runners.ParentRunner.getDescription():org.junit.runner.Description START EXECUTING SPECS FOR org.junit.runners.ParentRunner.getDescription():org.junit.runner.Description from state val$1 = old_this ; (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1542initial:org.junit.runners.model.Statement*; $T0_31 = n$1543initial:void; $irvar1 = n$1544initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1545initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) EXECUTING SPEC 1/5 ACTUAL PRECONDITION = val$1 = old_this ; (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1542initial:org.junit.runners.model.Statement*; $T0_31 = n$1543initial:void; $irvar1 = n$1544initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1545initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: this|callee = _t$2722formal:org.junit.runners.ParentRunner*( sub ) ; _t$2720|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2721|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$2721rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$2720rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$2723); MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(return|callee); MEMna < Annotation[] ParentRunner.getRunnerAnnotations():395 > {vpath: }(_t$2724); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$2726); LOCKED(_t$2721); RET < Annotation[] TestClass.getAnnotations() > (_t$2724); RET < List ParentRunner.getFilteredChildren() > (_t$2726); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2724); RET < TestClass ParentRunner.getTestClass() > (_t$2720) ; return|callee = _t$2725update:403:org.junit.runner.Description* ; _t$2723|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$2724|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$2724update:395, fChildren:_t$2723update:(z)395, fDisplayName:"null"update:395, fTestClass:nullupdate:395, fUniqueId:"null"update:395}formal(z):org.junit.runner.Description; _t$2720|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$2721|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$2721formal, filteredChildren:_t$2726update:(z)400, testClass:_t$2720formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$2726); RET < TestClass ParentRunner.getTestClass() > (_t$2720) ; return|callee = EXN _t$2726update:395:org.junit.runner.Description* ; _t$2726|->{}alloc:java.lang.IllegalArgumentException; _t$2720|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$2721|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$2721formal, filteredChildren:nullformal(z), testClass:_t$2720formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268(val$5); RET < boolean List.isEmpty() > (0) pi2: returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1542initial:org.junit.runners.model.Statement*; $T0_31 = n$1543initial:void; $irvar1 = n$1544initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1545initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$2722formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{childrenLock:_t$2721rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$2720rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$2721|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$2720|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply n$8 _t$2722 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1542initial:org.junit.runners.model.Statement*; $T0_31 = n$1543initial:void; $irvar1 = n$1544initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1545initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$2722 = n$8] |- n$8|->{childrenLock:_t$2721rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$2720rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$2721|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$2720|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply val$2 _t$2721 do_imply null null do_imply val$3 _t$2720 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1542initial:org.junit.runners.model.Statement*; $T0_31 = n$1543initial:void; $irvar1 = n$1544initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1545initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$2720 = val$3; _t$2721 = val$2; _t$2722 = n$8] |- val$2|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply null null Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1542initial:org.junit.runners.model.Statement*; $T0_31 = n$1543initial:void; $irvar1 = n$1544initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1545initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$2720 = val$3; _t$2721 = val$2; _t$2722 = n$8] |- val$2|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1542initial:org.junit.runners.model.Statement*; $T0_31 = n$1543initial:void; $irvar1 = n$1544initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1545initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ) [SUB: val$1 = n$8; _t$2720 = val$3; _t$2721 = val$2; _t$2722 = n$8] |- [FRAME TYPING: val$2: java.util.concurrent.locks.Lock( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Result of Abduction SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1542initial:org.junit.runners.model.Statement*; $T0_31 = n$1543initial:void; $irvar1 = n$1544initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1545initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$2720 = val$3; _t$2721 = val$2; _t$2722 = n$8] |- this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); val$2|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:val$2rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: val$2: java.util.concurrent.locks.Lock( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE in vpath_find exp:_t$2723 vpath_find: cannot find _t$2723 in vpath_find exp:_t$2725 vpath_find: cannot find _t$2725 in vpath_find exp:_t$2724 vpath_find: cannot find _t$2724 in vpath_find exp:_t$2726 vpath_find: cannot find _t$2726 New footprint: Frame fld: Frame typ: val$2: java.util.concurrent.locks.Lock( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) Missing fld: Instantiated frame: val$5|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); &classRules|->val$5update:268:java.util.List*; &$RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->val$5formal:java.util.List*( sub ); &$irvar0|->0nullify:void; &return|->n$1542initial:org.junit.runners.model.Statement*; &$T0_31|->n$1543initial:void; &$irvar1|->n$1544initial:void; &statement|->val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); &old_statement|->val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); &$irvar2|->n$1545initial:void; &this|->n$8formal:org.junit.runners.ParentRunner*( sub ); &old_this|->n$8formal:org.junit.runners.ParentRunner*( sub ) Instantiated post: PROP 1 of 2: MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2723); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(return|callee); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$2724); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$2726); LOCKED(val$2); RET < Annotation[] TestClass.getAnnotations() > (_t$2724); RET < List ParentRunner.getFilteredChildren() > (_t$2726); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2724); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = _t$2725update:270:org.junit.runner.Description* ; _t$2723|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$2724|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$2724update:270, fChildren:_t$2723update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$8|->{childrenLock:val$2formal, filteredChildren:_t$2726update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2726); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = EXN _t$2726update:270:org.junit.runner.Description* ; _t$2726|->{}alloc:java.lang.IllegalArgumentException; val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$8|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** RESULTS FUNCTION CALL ******* PROP 1 of 2: val$1 = old_this ; (-1 < val$6); val$6 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(val$2); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1542initial:org.junit.runners.model.Statement*; $T0_31 = n$1543initial:void; $irvar1 = n$1544initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1545initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$2|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$1|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$10|->{fAnnotations:_t$1update:270, fChildren:_t$2update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; old_this|->{childrenLock:val$2formal, filteredChildren:_t$0update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: val$1 = old_this ; (-1 < val$6); val$6 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = n$1543initial:void; $irvar1 = n$1544initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1545initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** END RESULTS FUNCTION CALL ******* pvar: classRules found error in dereference spec_pre: val$1 = old_this ; (-1 < val$6); val$6 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2723); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$2724); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$2726); LOCKED(val$2); RET < List ParentRunner.getFilteredChildren() > (_t$2726); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2724); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1542initial:org.junit.runners.model.Statement*; $T0_31 = n$1543initial:void; $irvar1 = n$1544initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1545initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$2724|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; _t$2723|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$10|->{fAnnotations:_t$2724update:270, fChildren:_t$2723update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; old_this|->{childrenLock:val$2formal, filteredChildren:_t$2726update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) exp val$5 desc: pvar: classRules found error in dereference spec_pre: val$1 = old_this ; (-1 < val$6); val$6 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2726); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$2726update:270:org.junit.runners.model.Statement*; $T0_31 = n$1543initial:void; $irvar1 = n$1544initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1545initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$2726|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) exp val$5 desc: Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] EXECUTING SPEC 2/5 ACTUAL PRECONDITION = val$1 = old_this ; (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1542initial:org.junit.runners.model.Statement*; $T0_31 = n$1543initial:void; $irvar1 = n$1544initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1545initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$2728 != null ; this|callee = _t$2729formal:org.junit.runners.ParentRunner*( sub ) ; _t$2727|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2728|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:_t$2728rearrange:(z)530, testClass:_t$2727rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$2728 != null; MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$2730); MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(return|callee); MEMna < Annotation[] ParentRunner.getRunnerAnnotations():395 > {vpath: }(_t$2731); RET < Annotation[] TestClass.getAnnotations() > (_t$2731); RET < List ParentRunner.getFilteredChildren() > (_t$2728); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2731); RET < TestClass ParentRunner.getTestClass() > (_t$2727) ; return|callee = _t$2732update:403:org.junit.runner.Description* ; _t$2730|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$2731|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$2731update:395, fChildren:_t$2730update:(z)395, fDisplayName:"null"update:395, fTestClass:nullupdate:395, fUniqueId:"null"update:395}formal(z):org.junit.runner.Description; _t$2727|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$2728|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$2728formal(z), testClass:_t$2727formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$2728 != null; MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$2732); RET < TestClass ParentRunner.getTestClass() > (_t$2727) ; return|callee = EXN _t$2732update:395:org.junit.runner.Description* ; _t$2732|->{}alloc:java.lang.IllegalArgumentException; _t$2727|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$2728|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$2728formal(z), testClass:_t$2727formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268(val$5); RET < boolean List.isEmpty() > (0) pi2: _t$2728 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1542initial:org.junit.runners.model.Statement*; $T0_31 = n$1543initial:void; $irvar1 = n$1544initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1545initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$2729formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{filteredChildren:_t$2728rearrange:(z)530, testClass:_t$2727rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$2728|->{}rearrange:400:java.util.List( sub ); _t$2727|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply n$8 _t$2729 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1542initial:org.junit.runners.model.Statement*; $T0_31 = n$1543initial:void; $irvar1 = n$1544initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1545initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$2729 = n$8] |- n$8|->{filteredChildren:_t$2728rearrange:(z)530, testClass:_t$2727rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$2728|->{}rearrange:400:java.util.List( sub ); _t$2727|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply null _t$2728 do_imply val$3 _t$2727 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1542initial:org.junit.runners.model.Statement*; $T0_31 = n$1543initial:void; $irvar1 = n$1544initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1545initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$2727 = val$3; _t$2728 = null; _t$2729 = n$8] |- null|->{}rearrange:400:java.util.List( sub ); val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply null null Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1542initial:org.junit.runners.model.Statement*; $T0_31 = n$1543initial:void; $irvar1 = n$1544initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1545initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$2727 = val$3; _t$2728 = null; _t$2729 = n$8] |- null|->{}rearrange:400:java.util.List( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1542initial:org.junit.runners.model.Statement*; $T0_31 = n$1543initial:void; $irvar1 = n$1544initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1545initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$2727 = val$3; _t$2728 = null; _t$2729 = n$8 null|->{}rearrange:400:java.util.List( sub )] |- [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] imply_pi: adding missing atom _t$2728 != null Result of Abduction SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1542initial:org.junit.runners.model.Statement*; $T0_31 = n$1543initial:void; $irvar1 = n$1544initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1545initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$2727 = val$3; _t$2728 = null; _t$2729 = n$8 _t$2728 != null* null|->{}rearrange:400:java.util.List( sub )] |- null != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); null|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:nullrearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE Implication error: missing_sigma not empty in re-execution EXECUTING SPEC 3/5 ACTUAL PRECONDITION = val$1 = old_this ; (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1542initial:org.junit.runners.model.Statement*; $T0_31 = n$1543initial:void; $irvar1 = n$1544initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1545initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$2733 != null ; this|callee = _t$2735formal:org.junit.runners.ParentRunner*( sub ) ; _t$2733|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2734|->{clazz:_t$2733rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:_t$2734rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) POST 1 of 1: _t$2733 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$2736); RET < Class TestClass.getJavaClass() > (_t$2733); RET < TestClass ParentRunner.getTestClass() > (_t$2734) ; return|callee = EXN _t$2736update:397:org.junit.runner.Description* ; _t$2736|->{}alloc:java.lang.IllegalArgumentException; _t$2733|->{name:""formal(z)}formal(z):java.lang.Class( sub ); _t$2734|->{clazz:_t$2733formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:_t$2734formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268(val$5); RET < boolean List.isEmpty() > (0) pi2: _t$2733 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1542initial:org.junit.runners.model.Statement*; $T0_31 = n$1543initial:void; $irvar1 = n$1544initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1545initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$2735formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{testClass:_t$2734rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$2734|->{clazz:_t$2733rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2733|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1542initial:org.junit.runners.model.Statement*; $T0_31 = n$1543initial:void; $irvar1 = n$1544initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1545initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$2735formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{testClass:_t$2734rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$2734|->{clazz:_t$2733rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2733|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: ""|->{count:_t$2754none, hash:_t$2755none, offset:_t$2756none, value:_t$2757none}none:java.lang.String] [FRAME TYPING: "": java.lang.String ] do_imply n$8 _t$2735 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1542initial:org.junit.runners.model.Statement*; $T0_31 = n$1543initial:void; $irvar1 = n$1544initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1545initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$2735 = n$8] |- n$8|->{testClass:_t$2734rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$2734|->{clazz:_t$2733rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2733|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: ""|->{count:_t$2754none, hash:_t$2755none, offset:_t$2756none, value:_t$2757none}none:java.lang.String] [FRAME TYPING: "": java.lang.String ] do_imply val$3 _t$2734 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1542initial:org.junit.runners.model.Statement*; $T0_31 = n$1543initial:void; $irvar1 = n$1544initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1545initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$2734 = val$3; _t$2735 = n$8] |- val$3|->{clazz:_t$2733rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2733|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal, filteredChildren:nullformal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$2754none, hash:_t$2755none, offset:_t$2756none, value:_t$2757none}none:java.lang.String] [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] do_imply null _t$2733 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1542initial:org.junit.runners.model.Statement*; $T0_31 = n$1543initial:void; $irvar1 = n$1544initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1545initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$2733 = null; _t$2734 = val$3; _t$2735 = n$8] |- null|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal, filteredChildren:nullformal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$2754none, hash:_t$2755none, offset:_t$2756none, value:_t$2757none}none:java.lang.String] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] Final Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1542initial:org.junit.runners.model.Statement*; $T0_31 = n$1543initial:void; $irvar1 = n$1544initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1545initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$2733 = null; _t$2734 = val$3; _t$2735 = n$8 @f$7 = ""* null|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub )] |- [FRAME FLD: n$8|->{childrenLock:val$2formal, filteredChildren:nullformal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$2754none, hash:_t$2755none, offset:_t$2756none, value:_t$2757none}none:java.lang.String] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] imply_pi: adding missing atom _t$2733 != null Result of Abduction SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1542initial:org.junit.runners.model.Statement*; $T0_31 = n$1543initial:void; $irvar1 = n$1544initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1545initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$2733 = null; _t$2734 = val$3; _t$2735 = n$8 _t$2733 != null; @f$7 = ""* null|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub )] |- null != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; null|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:val$3rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal, filteredChildren:nullformal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$2754none, hash:_t$2755none, offset:_t$2756none, value:_t$2757none}none:java.lang.String] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] returning TRUE explain_dereference_as_caller_expression _t$2733: cannot explain None found error in dereference spec_pre: _t$2733 != null ; this|callee = _t$2735formal:org.junit.runners.ParentRunner*( sub ) ; _t$2733|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2734|->{clazz:_t$2733rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:_t$2734rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) exp _t$2733 desc: EXECUTING SPEC 4/5 ACTUAL PRECONDITION = val$1 = old_this ; (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1542initial:org.junit.runners.model.Statement*; $T0_31 = n$1543initial:void; $irvar1 = n$1544initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1545initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$2737 != null; _t$2737 != ""; _t$2738 != null ; this|callee = _t$2741formal:org.junit.runners.ParentRunner*( sub ) ; _t$2737|->{}rearrange:(z)394:java.lang.String( sub ); _t$2738|->{name:_t$2737rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2739|->{clazz:_t$2738rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2740|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$2740rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$2739rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$2737 != null; _t$2737 != ""; _t$2738 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$2742); MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(return|callee); UND < Annotation[] Class.getAnnotations() > :216(_t$2744); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$2745); LOCKED(_t$2740); RET < Annotation[] TestClass.getAnnotations() > (_t$2744); RET < List ParentRunner.getFilteredChildren() > (_t$2745); RET < Class TestClass.getJavaClass() > (_t$2738); RET < String Class.getName() > (_t$2737); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2744); RET < TestClass ParentRunner.getTestClass() > (_t$2739) ; return|callee = _t$2743update:403:org.junit.runner.Description* ; _t$2742|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; return|callee|->{fAnnotations:_t$2744update:397, fChildren:_t$2742update:(z)397, fDisplayName:_t$2737update:397, fTestClass:_t$2738update:397, fUniqueId:_t$2737update:397}formal(z):org.junit.runner.Description; _t$2737|->{}formal:java.lang.String( sub ); _t$2738|->{name:_t$2737formal(z)}formal(z):java.lang.Class( sub ); _t$2739|->{clazz:_t$2738formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$2740|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$2740formal, filteredChildren:_t$2745update:(z)400, testClass:_t$2739formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$2737 != null; _t$2737 != ""; _t$2738 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$2745); RET < Class TestClass.getJavaClass() > (_t$2738); RET < String Class.getName() > (_t$2737); RET < TestClass ParentRunner.getTestClass() > (_t$2739) ; return|callee = EXN _t$2745update:397:org.junit.runner.Description* ; _t$2745|->{}alloc:java.lang.IllegalArgumentException; _t$2737|->{}formal:java.lang.String( sub ); _t$2738|->{name:_t$2737formal(z)}formal(z):java.lang.Class( sub ); _t$2739|->{clazz:_t$2738formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$2740|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$2740formal, filteredChildren:nullformal(z), testClass:_t$2739formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268(val$5); RET < boolean List.isEmpty() > (0) pi2: _t$2737 != null; _t$2737 != ""; _t$2738 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1542initial:org.junit.runners.model.Statement*; $T0_31 = n$1543initial:void; $irvar1 = n$1544initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1545initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$2741formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{childrenLock:_t$2740rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$2739rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$2740|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$2739|->{clazz:_t$2738rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2738|->{name:_t$2737rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2737|->{}rearrange:(z)394:java.lang.String( sub ) do_imply n$8 _t$2741 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1542initial:org.junit.runners.model.Statement*; $T0_31 = n$1543initial:void; $irvar1 = n$1544initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1545initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$2741 = n$8] |- n$8|->{childrenLock:_t$2740rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$2739rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$2740|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$2739|->{clazz:_t$2738rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2738|->{name:_t$2737rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2737|->{}rearrange:(z)394:java.lang.String( sub ) do_imply val$2 _t$2740 do_imply null null do_imply val$3 _t$2739 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1542initial:org.junit.runners.model.Statement*; $T0_31 = n$1543initial:void; $irvar1 = n$1544initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1545initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$2739 = val$3; _t$2740 = val$2; _t$2741 = n$8] |- val$2|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); val$3|->{clazz:_t$2738rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2738|->{name:_t$2737rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2737|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply null _t$2738 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1542initial:org.junit.runners.model.Statement*; $T0_31 = n$1543initial:void; $irvar1 = n$1544initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1545initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$2738 = null; _t$2739 = val$3; _t$2740 = val$2; _t$2741 = n$8] |- val$2|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); null|->{name:_t$2737rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2737|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1542initial:org.junit.runners.model.Statement*; $T0_31 = n$1543initial:void; $irvar1 = n$1544initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1545initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ) [SUB: val$1 = n$8; _t$2738 = null; _t$2739 = val$3; _t$2740 = val$2; _t$2741 = n$8] |- null|->{name:_t$2737rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2737|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$2: java.util.concurrent.locks.Lock( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1542initial:org.junit.runners.model.Statement*; $T0_31 = n$1543initial:void; $irvar1 = n$1544initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1545initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ) [SUB: val$1 = n$8; _t$2737 = @f$8; _t$2738 = null; _t$2739 = val$3; _t$2740 = val$2; _t$2741 = n$8 null|->{name:_t$2737rearrange:(z)15}rearrange:394:java.lang.Class( sub )] |- @f$8|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$2: java.util.concurrent.locks.Lock( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1542initial:org.junit.runners.model.Statement*; $T0_31 = n$1543initial:void; $irvar1 = n$1544initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1545initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ) [SUB: val$1 = n$8; _t$2737 = @f$8; _t$2738 = null; _t$2739 = val$3; _t$2740 = val$2; _t$2741 = n$8 @f$8|->{}rearrange:(z)394:java.lang.String( sub ); null|->{name:_t$2737rearrange:(z)15}rearrange:394:java.lang.Class( sub )] |- [FRAME TYPING: val$2: java.util.concurrent.locks.Lock( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] imply_pi: adding missing atom _t$2737 != "" imply_pi: adding missing atom _t$2738 != null Result of Abduction SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1542initial:org.junit.runners.model.Statement*; $T0_31 = n$1543initial:void; $irvar1 = n$1544initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1545initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$2737 = @f$8; _t$2738 = null; _t$2739 = val$3; _t$2740 = val$2; _t$2741 = n$8 _t$2738 != null; _t$2737 != ""* @f$8|->{}rearrange:(z)394:java.lang.String( sub ); null|->{name:_t$2737rearrange:(z)15}rearrange:394:java.lang.Class( sub )] |- @f$8 != null; @f$8 != ""; null != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; @f$8|->{}rearrange:(z)394:java.lang.String( sub ); null|->{name:@f$8rearrange:(z)15}rearrange:394:java.lang.Class( sub ); val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); val$2|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:val$2rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: val$2: java.util.concurrent.locks.Lock( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE explain_dereference_as_caller_expression _t$2738: cannot explain None found error in dereference spec_pre: _t$2737 != null; _t$2737 != ""; _t$2738 != null ; this|callee = _t$2741formal:org.junit.runners.ParentRunner*( sub ) ; _t$2737|->{}rearrange:(z)394:java.lang.String( sub ); _t$2738|->{name:_t$2737rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2739|->{clazz:_t$2738rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2740|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$2740rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$2739rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) exp _t$2738 desc: EXECUTING SPEC 5/5 ACTUAL PRECONDITION = val$1 = old_this ; (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1542initial:org.junit.runners.model.Statement*; $T0_31 = n$1543initial:void; $irvar1 = n$1544initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1545initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$2746 != null; _t$2746 != ""; _t$2747 != null; _t$2749 != null ; this|callee = _t$2750formal:org.junit.runners.ParentRunner*( sub ) ; _t$2746|->{}rearrange:(z)394:java.lang.String( sub ); _t$2747|->{name:_t$2746rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2748|->{clazz:_t$2747rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2749|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:_t$2749rearrange:(z)530, testClass:_t$2748rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$2746 != null; _t$2746 != ""; _t$2747 != null; _t$2749 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$2751); MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(return|callee); UND < Annotation[] Class.getAnnotations() > :216(_t$2753); RET < Annotation[] TestClass.getAnnotations() > (_t$2753); RET < List ParentRunner.getFilteredChildren() > (_t$2749); RET < Class TestClass.getJavaClass() > (_t$2747); RET < String Class.getName() > (_t$2746); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2753); RET < TestClass ParentRunner.getTestClass() > (_t$2748) ; return|callee = _t$2752update:403:org.junit.runner.Description* ; _t$2751|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; return|callee|->{fAnnotations:_t$2753update:397, fChildren:_t$2751update:(z)397, fDisplayName:_t$2746update:397, fTestClass:_t$2747update:397, fUniqueId:_t$2746update:397}formal(z):org.junit.runner.Description; _t$2746|->{}formal:java.lang.String( sub ); _t$2747|->{name:_t$2746formal(z)}formal(z):java.lang.Class( sub ); _t$2748|->{clazz:_t$2747formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$2749|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$2749formal(z), testClass:_t$2748formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$2746 != null; _t$2746 != ""; _t$2747 != null; _t$2749 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$2752); RET < Class TestClass.getJavaClass() > (_t$2747); RET < String Class.getName() > (_t$2746); RET < TestClass ParentRunner.getTestClass() > (_t$2748) ; return|callee = EXN _t$2752update:397:org.junit.runner.Description* ; _t$2752|->{}alloc:java.lang.IllegalArgumentException; _t$2746|->{}formal:java.lang.String( sub ); _t$2747|->{name:_t$2746formal(z)}formal(z):java.lang.Class( sub ); _t$2748|->{clazz:_t$2747formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$2749|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$2749formal(z), testClass:_t$2748formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268(val$5); RET < boolean List.isEmpty() > (0) pi2: _t$2746 != null; _t$2746 != ""; _t$2747 != null; _t$2749 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1542initial:org.junit.runners.model.Statement*; $T0_31 = n$1543initial:void; $irvar1 = n$1544initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1545initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$2750formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{filteredChildren:_t$2749rearrange:(z)530, testClass:_t$2748rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$2749|->{}rearrange:400:java.util.List( sub ); _t$2748|->{clazz:_t$2747rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2747|->{name:_t$2746rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2746|->{}rearrange:(z)394:java.lang.String( sub ) do_imply n$8 _t$2750 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1542initial:org.junit.runners.model.Statement*; $T0_31 = n$1543initial:void; $irvar1 = n$1544initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1545initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$2750 = n$8] |- n$8|->{filteredChildren:_t$2749rearrange:(z)530, testClass:_t$2748rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$2749|->{}rearrange:400:java.util.List( sub ); _t$2748|->{clazz:_t$2747rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2747|->{name:_t$2746rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2746|->{}rearrange:(z)394:java.lang.String( sub ) do_imply null _t$2749 do_imply val$3 _t$2748 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1542initial:org.junit.runners.model.Statement*; $T0_31 = n$1543initial:void; $irvar1 = n$1544initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1545initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$2748 = val$3; _t$2749 = null; _t$2750 = n$8] |- null|->{}rearrange:400:java.util.List( sub ); val$3|->{clazz:_t$2747rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2747|->{name:_t$2746rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2746|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply null _t$2747 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1542initial:org.junit.runners.model.Statement*; $T0_31 = n$1543initial:void; $irvar1 = n$1544initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1545initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$2747 = null; _t$2748 = val$3; _t$2749 = null; _t$2750 = n$8] |- null|->{}rearrange:400:java.util.List( sub ); null|->{name:_t$2746rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2746|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1542initial:org.junit.runners.model.Statement*; $T0_31 = n$1543initial:void; $irvar1 = n$1544initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1545initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$2747 = null; _t$2748 = val$3; _t$2749 = null; _t$2750 = n$8 null|->{}rearrange:400:java.util.List( sub )] |- null|->{name:_t$2746rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2746|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1542initial:org.junit.runners.model.Statement*; $T0_31 = n$1543initial:void; $irvar1 = n$1544initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1545initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$2746 = @f$9; _t$2747 = null; _t$2748 = val$3; _t$2749 = null; _t$2750 = n$8 null|->{name:_t$2746rearrange:(z)15}rearrange:394:java.lang.Class( sub ); null|->{}rearrange:400:java.util.List( sub )] |- @f$9|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1542initial:org.junit.runners.model.Statement*; $T0_31 = n$1543initial:void; $irvar1 = n$1544initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1545initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$2746 = @f$9; _t$2747 = null; _t$2748 = val$3; _t$2749 = null; _t$2750 = n$8 @f$9|->{}rearrange:(z)394:java.lang.String( sub ); null|->{name:_t$2746rearrange:(z)15}rearrange:394:java.lang.Class( sub ); null|->{}rearrange:400:java.util.List( sub )] |- [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] imply_pi: adding missing atom _t$2746 != "" imply_pi: adding missing atom _t$2747 != null imply_pi: adding missing atom _t$2749 != null Result of Abduction SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1542initial:org.junit.runners.model.Statement*; $T0_31 = n$1543initial:void; $irvar1 = n$1544initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1545initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$2746 = @f$9; _t$2747 = null; _t$2748 = val$3; _t$2749 = null; _t$2750 = n$8 _t$2749 != null; _t$2747 != null; _t$2746 != ""* @f$9|->{}rearrange:(z)394:java.lang.String( sub ); null|->{name:_t$2746rearrange:(z)15}rearrange:394:java.lang.Class( sub ); null|->{}rearrange:400:java.util.List( sub )] |- @f$9 != null; @f$9 != ""; null != null; null != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; @f$9|->{}rearrange:(z)394:java.lang.String( sub ); null|->{name:@f$9rearrange:(z)15}rearrange:394:java.lang.Class( sub ); val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); null|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:nullrearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE explain_dereference_as_caller_expression _t$2747: cannot explain None found error in dereference spec_pre: _t$2746 != null; _t$2746 != ""; _t$2747 != null; _t$2749 != null ; this|callee = _t$2750formal:org.junit.runners.ParentRunner*( sub ) ; _t$2746|->{}rearrange:(z)394:java.lang.String( sub ); _t$2747|->{name:_t$2746rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2748|->{clazz:_t$2747rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2749|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:_t$2749rearrange:(z)530, testClass:_t$2748rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) exp _t$2747 desc: Instruction Returns PROP 1 of 2: val$1 = old_this ; (-1 < val$6); val$6 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$6); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$5); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(val$2); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$4initial:org.junit.runners.model.Statement*; $T0_31 = _t$3initial:void; $irvar1 = _t$2initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$6|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$5|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$10|->{fAnnotations:_t$5update:270, fChildren:_t$6update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; old_this|->{childrenLock:val$2formal, filteredChildren:_t$0update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: val$1 = old_this ; (-1 < val$6); val$6 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (n$10); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction *&$irvar1:org.junit.runner.Description*=n$10 [line 270] in vpath_find exp:n$1546 vpath_find: cannot find n$1546 in vpath_find exp:n$10 vpath_find: cannot find n$10 in vpath_find exp:n$1547 vpath_find: cannot find n$1547 .... Rearrangement Start .... Exp: &$irvar1 Prop: val$1 = old_this ; (-1 < val$6); val$6 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$1546); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(n$1547); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < List Collections.unmodifiableList(ArrayList) > :534(n$1548); LOCKED(val$2); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (n$1548); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (n$1547); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1549initial:org.junit.runners.model.Statement*; $T0_31 = n$1550initial:void; $irvar1 = n$1551initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1552initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$1547|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; n$1546|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:n$1547update:270, fChildren:n$1546update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; old_this|->{childrenLock:val$2formal, filteredChildren:n$1548update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 1: val$1 = old_this ; (-1 < val$6); val$6 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(val$2); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$5initial:org.junit.runners.model.Statement*; $T0_31 = _t$4initial:void; $irvar1 = n$10update:270:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$3|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$2|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); $irvar1|->{fAnnotations:_t$2update:270, fChildren:_t$3update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; old_this|->{childrenLock:val$2formal, filteredChildren:_t$0update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Skipping instr *&$irvar1:org.junit.runner.Description*=n$10 [line 270] due to exception Instruction NULLIFY(&this); [line 270] in vpath_find exp:_t$3 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$3 in vpath_find exp:n$10 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find n$10 in vpath_find exp:_t$2 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$2 Instruction Returns PROP 1 of 1: val$1 = old_this ; (-1 < val$6); val$6 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(val$2); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$5initial:org.junit.runners.model.Statement*; $T0_31 = _t$4initial:void; $irvar1 = n$10update:270:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$3|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$2|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); $irvar1|->{fAnnotations:_t$2update:270, fChildren:_t$3update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; old_this|->{childrenLock:val$2formal, filteredChildren:_t$0update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction NULLIFY(&this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: val$1 = old_this ; (-1 < val$6); val$6 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (n$10); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction EXIT_SCOPE(_,n$8,n$10,this); [line 270] in vpath_find exp:_t$3 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$3 in vpath_find exp:n$10 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find n$10 in vpath_find exp:_t$2 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$2 Instruction Returns PROP 1 of 1: (-1 < val$6); val$6 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$4); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(val$2); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$3); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$6initial:org.junit.runners.model.Statement*; $T0_31 = _t$5initial:void; $irvar1 = _t$2update:270:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$4|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$3|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $irvar1|->{fAnnotations:_t$3update:270, fChildren:_t$4update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:_t$0update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction EXIT_SCOPE(_,n$8,n$10,this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: (-1 < val$6); val$6 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (_t$4); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) .... After Symbolic Execution .... PROP 1 of 2: (-1 < val$6); val$6 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$4); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(val$2); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$3); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$6initial:org.junit.runners.model.Statement*; $T0_31 = _t$5initial:void; $irvar1 = _t$2update:270:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$4|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$3|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $irvar1|->{fAnnotations:_t$3update:270, fChildren:_t$4update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:_t$0update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: (-1 < val$6); val$6 != 1; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (_t$4); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub )
node10#session173(270) biabduction **** [RE:Pending] Statement ParentRunner.withClassRules(RunBefores) Node: 10, Procedure: Statement ParentRunner.withClassRules(RunBefores), Todo: 1 **** PROP 1 of 1: (val$6 <= -1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = val$1formal:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) .... Instructions: .... n$8=*&this:org.junit.runners.ParentRunner* [line 270]; _=*n$8:org.junit.runners.ParentRunner [line 270]; n$10=_fun_Description ParentRunner.getDescription()(n$8:org.junit.runners.ParentRunner*) virtual [line 270]; *&$irvar1:org.junit.runner.Description*=n$10 [line 270]; NULLIFY(&this); [line 270]; EXIT_SCOPE(_,n$8,n$10,this); [line 270]; Processing prop 1/1 Instruction n$8=*&this:org.junit.runners.ParentRunner* [line 270] .... Rearrangement Start .... Exp: &this Prop: (val$6 <= -1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1684initial:org.junit.runners.model.Statement*; $T0_31 = n$1685initial:void; $irvar1 = n$1686initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1687initial:void; this = val$1formal:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 1: val$1 = old_this ; (val$6 <= -1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction _=*n$8:org.junit.runners.ParentRunner [line 270] .... Rearrangement Start .... Exp: n$8 Prop: val$1 = old_this ; (val$6 <= -1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1688initial:org.junit.runners.model.Statement*; $T0_31 = n$1689initial:void; $irvar1 = n$1690initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1691initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 1: val$1 = old_this ; (val$6 <= -1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction n$10=_fun_Description ParentRunner.getDescription()(n$8:org.junit.runners.ParentRunner*) virtual [line 270] Found 5 specs for function org.junit.runners.ParentRunner.getDescription():org.junit.runner.Description START EXECUTING SPECS FOR org.junit.runners.ParentRunner.getDescription():org.junit.runner.Description from state val$1 = old_this ; (val$6 <= -1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1692initial:org.junit.runners.model.Statement*; $T0_31 = n$1693initial:void; $irvar1 = n$1694initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1695initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) EXECUTING SPEC 1/5 ACTUAL PRECONDITION = val$1 = old_this ; (val$6 <= -1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1692initial:org.junit.runners.model.Statement*; $T0_31 = n$1693initial:void; $irvar1 = n$1694initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1695initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: this|callee = _t$2983formal:org.junit.runners.ParentRunner*( sub ) ; _t$2981|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2982|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$2982rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$2981rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$2984); MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(return|callee); MEMna < Annotation[] ParentRunner.getRunnerAnnotations():395 > {vpath: }(_t$2985); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$2987); LOCKED(_t$2982); RET < Annotation[] TestClass.getAnnotations() > (_t$2985); RET < List ParentRunner.getFilteredChildren() > (_t$2987); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2985); RET < TestClass ParentRunner.getTestClass() > (_t$2981) ; return|callee = _t$2986update:403:org.junit.runner.Description* ; _t$2984|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$2985|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$2985update:395, fChildren:_t$2984update:(z)395, fDisplayName:"null"update:395, fTestClass:nullupdate:395, fUniqueId:"null"update:395}formal(z):org.junit.runner.Description; _t$2981|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$2982|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$2982formal, filteredChildren:_t$2987update:(z)400, testClass:_t$2981formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$2987); RET < TestClass ParentRunner.getTestClass() > (_t$2981) ; return|callee = EXN _t$2987update:395:org.junit.runner.Description* ; _t$2987|->{}alloc:java.lang.IllegalArgumentException; _t$2981|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$2982|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$2982formal, filteredChildren:nullformal(z), testClass:_t$2981formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (val$6 <= -1); UND < List ParentRunner.classRules() > :268(val$5); RET < boolean List.isEmpty() > (0) pi2: returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (val$6 <= -1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1692initial:org.junit.runners.model.Statement*; $T0_31 = n$1693initial:void; $irvar1 = n$1694initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1695initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$2983formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{childrenLock:_t$2982rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$2981rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$2982|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$2981|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply n$8 _t$2983 Current Implication SUB: val$1 = n$8 (val$6 <= -1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1692initial:org.junit.runners.model.Statement*; $T0_31 = n$1693initial:void; $irvar1 = n$1694initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1695initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$2983 = n$8] |- n$8|->{childrenLock:_t$2982rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$2981rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$2982|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$2981|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply val$2 _t$2982 do_imply null null do_imply val$3 _t$2981 Current Implication SUB: val$1 = n$8 (val$6 <= -1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1692initial:org.junit.runners.model.Statement*; $T0_31 = n$1693initial:void; $irvar1 = n$1694initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1695initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$2981 = val$3; _t$2982 = val$2; _t$2983 = n$8] |- val$2|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply null null Current Implication SUB: val$1 = n$8 (val$6 <= -1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1692initial:org.junit.runners.model.Statement*; $T0_31 = n$1693initial:void; $irvar1 = n$1694initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1695initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$2981 = val$3; _t$2982 = val$2; _t$2983 = n$8] |- val$2|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (val$6 <= -1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1692initial:org.junit.runners.model.Statement*; $T0_31 = n$1693initial:void; $irvar1 = n$1694initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1695initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [SUB: val$1 = n$8; _t$2981 = val$3; _t$2982 = val$2; _t$2983 = n$8] |- [FRAME TYPING: val$2: java.util.concurrent.locks.Lock( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Result of Abduction SUB: val$1 = n$8 (val$6 <= -1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1692initial:org.junit.runners.model.Statement*; $T0_31 = n$1693initial:void; $irvar1 = n$1694initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1695initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$2981 = val$3; _t$2982 = val$2; _t$2983 = n$8] |- this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); val$2|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:val$2rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: val$2: java.util.concurrent.locks.Lock( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE in vpath_find exp:_t$2984 vpath_find: cannot find _t$2984 in vpath_find exp:_t$2986 vpath_find: cannot find _t$2986 in vpath_find exp:_t$2985 vpath_find: cannot find _t$2985 in vpath_find exp:_t$2987 vpath_find: cannot find _t$2987 New footprint: Frame fld: Frame typ: val$2: java.util.concurrent.locks.Lock( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) Missing fld: Instantiated frame: val$5|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); &classRules|->val$5update:268:java.util.List*; &$RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->val$5formal:java.util.List*( sub ); &$irvar0|->0nullify:void; &return|->n$1692initial:org.junit.runners.model.Statement*; &$T0_31|->n$1693initial:void; &$irvar1|->n$1694initial:void; &statement|->val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); &old_statement|->val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); &$irvar2|->n$1695initial:void; &this|->n$8formal:org.junit.runners.ParentRunner*( sub ); &old_this|->n$8formal:org.junit.runners.ParentRunner*( sub ) Instantiated post: PROP 1 of 2: MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2984); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(return|callee); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$2985); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$2987); LOCKED(val$2); RET < Annotation[] TestClass.getAnnotations() > (_t$2985); RET < List ParentRunner.getFilteredChildren() > (_t$2987); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2985); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = _t$2986update:270:org.junit.runner.Description* ; _t$2984|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$2985|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$2985update:270, fChildren:_t$2984update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$8|->{childrenLock:val$2formal, filteredChildren:_t$2987update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2987); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = EXN _t$2987update:270:org.junit.runner.Description* ; _t$2987|->{}alloc:java.lang.IllegalArgumentException; val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$8|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** RESULTS FUNCTION CALL ******* PROP 1 of 2: val$1 = old_this ; (val$6 <= -1); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(val$2); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1692initial:org.junit.runners.model.Statement*; $T0_31 = n$1693initial:void; $irvar1 = n$1694initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1695initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$2|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$1|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$10|->{fAnnotations:_t$1update:270, fChildren:_t$2update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; old_this|->{childrenLock:val$2formal, filteredChildren:_t$0update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: val$1 = old_this ; (val$6 <= -1); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = n$1693initial:void; $irvar1 = n$1694initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1695initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** END RESULTS FUNCTION CALL ******* pvar: classRules found error in dereference spec_pre: val$1 = old_this ; (val$6 <= -1); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2984); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$2985); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$2987); LOCKED(val$2); RET < List ParentRunner.getFilteredChildren() > (_t$2987); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2985); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1692initial:org.junit.runners.model.Statement*; $T0_31 = n$1693initial:void; $irvar1 = n$1694initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1695initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$2985|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; _t$2984|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$10|->{fAnnotations:_t$2985update:270, fChildren:_t$2984update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; old_this|->{childrenLock:val$2formal, filteredChildren:_t$2987update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) exp val$5 desc: pvar: classRules found error in dereference spec_pre: val$1 = old_this ; (val$6 <= -1); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2987); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$2987update:270:org.junit.runners.model.Statement*; $T0_31 = n$1693initial:void; $irvar1 = n$1694initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1695initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$2987|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) exp val$5 desc: Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] EXECUTING SPEC 2/5 ACTUAL PRECONDITION = val$1 = old_this ; (val$6 <= -1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1692initial:org.junit.runners.model.Statement*; $T0_31 = n$1693initial:void; $irvar1 = n$1694initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1695initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$2989 != null ; this|callee = _t$2990formal:org.junit.runners.ParentRunner*( sub ) ; _t$2988|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2989|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:_t$2989rearrange:(z)530, testClass:_t$2988rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$2989 != null; MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$2991); MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(return|callee); MEMna < Annotation[] ParentRunner.getRunnerAnnotations():395 > {vpath: }(_t$2992); RET < Annotation[] TestClass.getAnnotations() > (_t$2992); RET < List ParentRunner.getFilteredChildren() > (_t$2989); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2992); RET < TestClass ParentRunner.getTestClass() > (_t$2988) ; return|callee = _t$2993update:403:org.junit.runner.Description* ; _t$2991|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$2992|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$2992update:395, fChildren:_t$2991update:(z)395, fDisplayName:"null"update:395, fTestClass:nullupdate:395, fUniqueId:"null"update:395}formal(z):org.junit.runner.Description; _t$2988|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$2989|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$2989formal(z), testClass:_t$2988formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$2989 != null; MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$2993); RET < TestClass ParentRunner.getTestClass() > (_t$2988) ; return|callee = EXN _t$2993update:395:org.junit.runner.Description* ; _t$2993|->{}alloc:java.lang.IllegalArgumentException; _t$2988|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$2989|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$2989formal(z), testClass:_t$2988formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (val$6 <= -1); UND < List ParentRunner.classRules() > :268(val$5); RET < boolean List.isEmpty() > (0) pi2: _t$2989 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (val$6 <= -1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1692initial:org.junit.runners.model.Statement*; $T0_31 = n$1693initial:void; $irvar1 = n$1694initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1695initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$2990formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{filteredChildren:_t$2989rearrange:(z)530, testClass:_t$2988rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$2989|->{}rearrange:400:java.util.List( sub ); _t$2988|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply n$8 _t$2990 Current Implication SUB: val$1 = n$8 (val$6 <= -1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1692initial:org.junit.runners.model.Statement*; $T0_31 = n$1693initial:void; $irvar1 = n$1694initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1695initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$2990 = n$8] |- n$8|->{filteredChildren:_t$2989rearrange:(z)530, testClass:_t$2988rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$2989|->{}rearrange:400:java.util.List( sub ); _t$2988|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply null _t$2989 do_imply val$3 _t$2988 Current Implication SUB: val$1 = n$8 (val$6 <= -1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1692initial:org.junit.runners.model.Statement*; $T0_31 = n$1693initial:void; $irvar1 = n$1694initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1695initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$2988 = val$3; _t$2989 = null; _t$2990 = n$8] |- null|->{}rearrange:400:java.util.List( sub ); val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply null null Current Implication SUB: val$1 = n$8 (val$6 <= -1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1692initial:org.junit.runners.model.Statement*; $T0_31 = n$1693initial:void; $irvar1 = n$1694initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1695initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$2988 = val$3; _t$2989 = null; _t$2990 = n$8] |- null|->{}rearrange:400:java.util.List( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (val$6 <= -1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1692initial:org.junit.runners.model.Statement*; $T0_31 = n$1693initial:void; $irvar1 = n$1694initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1695initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$2988 = val$3; _t$2989 = null; _t$2990 = n$8 null|->{}rearrange:400:java.util.List( sub )] |- [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] imply_pi: adding missing atom _t$2989 != null Result of Abduction SUB: val$1 = n$8 (val$6 <= -1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1692initial:org.junit.runners.model.Statement*; $T0_31 = n$1693initial:void; $irvar1 = n$1694initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1695initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$2988 = val$3; _t$2989 = null; _t$2990 = n$8 _t$2989 != null* null|->{}rearrange:400:java.util.List( sub )] |- null != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); null|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:nullrearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE Implication error: missing_sigma not empty in re-execution EXECUTING SPEC 3/5 ACTUAL PRECONDITION = val$1 = old_this ; (val$6 <= -1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1692initial:org.junit.runners.model.Statement*; $T0_31 = n$1693initial:void; $irvar1 = n$1694initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1695initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$2994 != null ; this|callee = _t$2996formal:org.junit.runners.ParentRunner*( sub ) ; _t$2994|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2995|->{clazz:_t$2994rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:_t$2995rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) POST 1 of 1: _t$2994 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$2997); RET < Class TestClass.getJavaClass() > (_t$2994); RET < TestClass ParentRunner.getTestClass() > (_t$2995) ; return|callee = EXN _t$2997update:397:org.junit.runner.Description* ; _t$2997|->{}alloc:java.lang.IllegalArgumentException; _t$2994|->{name:""formal(z)}formal(z):java.lang.Class( sub ); _t$2995|->{clazz:_t$2994formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:_t$2995formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (val$6 <= -1); UND < List ParentRunner.classRules() > :268(val$5); RET < boolean List.isEmpty() > (0) pi2: _t$2994 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (val$6 <= -1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1692initial:org.junit.runners.model.Statement*; $T0_31 = n$1693initial:void; $irvar1 = n$1694initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1695initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$2996formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{testClass:_t$2995rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$2995|->{clazz:_t$2994rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2994|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) Current Implication SUB: val$1 = n$8 (val$6 <= -1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1692initial:org.junit.runners.model.Statement*; $T0_31 = n$1693initial:void; $irvar1 = n$1694initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1695initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$2996formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{testClass:_t$2995rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$2995|->{clazz:_t$2994rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2994|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: ""|->{count:_t$3015none, hash:_t$3016none, offset:_t$3017none, value:_t$3018none}none:java.lang.String] [FRAME TYPING: "": java.lang.String ] do_imply n$8 _t$2996 Current Implication SUB: val$1 = n$8 (val$6 <= -1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1692initial:org.junit.runners.model.Statement*; $T0_31 = n$1693initial:void; $irvar1 = n$1694initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1695initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$2996 = n$8] |- n$8|->{testClass:_t$2995rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$2995|->{clazz:_t$2994rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2994|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: ""|->{count:_t$3015none, hash:_t$3016none, offset:_t$3017none, value:_t$3018none}none:java.lang.String] [FRAME TYPING: "": java.lang.String ] do_imply val$3 _t$2995 Current Implication SUB: val$1 = n$8 (val$6 <= -1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1692initial:org.junit.runners.model.Statement*; $T0_31 = n$1693initial:void; $irvar1 = n$1694initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1695initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$2995 = val$3; _t$2996 = n$8] |- val$3|->{clazz:_t$2994rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2994|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal, filteredChildren:nullformal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$3015none, hash:_t$3016none, offset:_t$3017none, value:_t$3018none}none:java.lang.String] [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] do_imply null _t$2994 Current Implication SUB: val$1 = n$8 (val$6 <= -1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1692initial:org.junit.runners.model.Statement*; $T0_31 = n$1693initial:void; $irvar1 = n$1694initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1695initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$2994 = null; _t$2995 = val$3; _t$2996 = n$8] |- null|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal, filteredChildren:nullformal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$3015none, hash:_t$3016none, offset:_t$3017none, value:_t$3018none}none:java.lang.String] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] Final Implication SUB: val$1 = n$8 (val$6 <= -1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1692initial:org.junit.runners.model.Statement*; $T0_31 = n$1693initial:void; $irvar1 = n$1694initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1695initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$2994 = null; _t$2995 = val$3; _t$2996 = n$8 @f$10 = ""* null|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub )] |- [FRAME FLD: n$8|->{childrenLock:val$2formal, filteredChildren:nullformal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$3015none, hash:_t$3016none, offset:_t$3017none, value:_t$3018none}none:java.lang.String] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] imply_pi: adding missing atom _t$2994 != null Result of Abduction SUB: val$1 = n$8 (val$6 <= -1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1692initial:org.junit.runners.model.Statement*; $T0_31 = n$1693initial:void; $irvar1 = n$1694initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1695initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$2994 = null; _t$2995 = val$3; _t$2996 = n$8 _t$2994 != null; @f$10 = ""* null|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub )] |- null != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; null|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:val$3rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal, filteredChildren:nullformal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$3015none, hash:_t$3016none, offset:_t$3017none, value:_t$3018none}none:java.lang.String] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] returning TRUE explain_dereference_as_caller_expression _t$2994: cannot explain None found error in dereference spec_pre: _t$2994 != null ; this|callee = _t$2996formal:org.junit.runners.ParentRunner*( sub ) ; _t$2994|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2995|->{clazz:_t$2994rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:_t$2995rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) exp _t$2994 desc: EXECUTING SPEC 4/5 ACTUAL PRECONDITION = val$1 = old_this ; (val$6 <= -1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1692initial:org.junit.runners.model.Statement*; $T0_31 = n$1693initial:void; $irvar1 = n$1694initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1695initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$2998 != null; _t$2998 != ""; _t$2999 != null ; this|callee = _t$3002formal:org.junit.runners.ParentRunner*( sub ) ; _t$2998|->{}rearrange:(z)394:java.lang.String( sub ); _t$2999|->{name:_t$2998rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3000|->{clazz:_t$2999rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3001|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$3001rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$3000rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$2998 != null; _t$2998 != ""; _t$2999 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$3003); MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(return|callee); UND < Annotation[] Class.getAnnotations() > :216(_t$3005); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$3006); LOCKED(_t$3001); RET < Annotation[] TestClass.getAnnotations() > (_t$3005); RET < List ParentRunner.getFilteredChildren() > (_t$3006); RET < Class TestClass.getJavaClass() > (_t$2999); RET < String Class.getName() > (_t$2998); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$3005); RET < TestClass ParentRunner.getTestClass() > (_t$3000) ; return|callee = _t$3004update:403:org.junit.runner.Description* ; _t$3003|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; return|callee|->{fAnnotations:_t$3005update:397, fChildren:_t$3003update:(z)397, fDisplayName:_t$2998update:397, fTestClass:_t$2999update:397, fUniqueId:_t$2998update:397}formal(z):org.junit.runner.Description; _t$2998|->{}formal:java.lang.String( sub ); _t$2999|->{name:_t$2998formal(z)}formal(z):java.lang.Class( sub ); _t$3000|->{clazz:_t$2999formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$3001|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$3001formal, filteredChildren:_t$3006update:(z)400, testClass:_t$3000formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$2998 != null; _t$2998 != ""; _t$2999 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$3006); RET < Class TestClass.getJavaClass() > (_t$2999); RET < String Class.getName() > (_t$2998); RET < TestClass ParentRunner.getTestClass() > (_t$3000) ; return|callee = EXN _t$3006update:397:org.junit.runner.Description* ; _t$3006|->{}alloc:java.lang.IllegalArgumentException; _t$2998|->{}formal:java.lang.String( sub ); _t$2999|->{name:_t$2998formal(z)}formal(z):java.lang.Class( sub ); _t$3000|->{clazz:_t$2999formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$3001|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$3001formal, filteredChildren:nullformal(z), testClass:_t$3000formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (val$6 <= -1); UND < List ParentRunner.classRules() > :268(val$5); RET < boolean List.isEmpty() > (0) pi2: _t$2998 != null; _t$2998 != ""; _t$2999 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (val$6 <= -1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1692initial:org.junit.runners.model.Statement*; $T0_31 = n$1693initial:void; $irvar1 = n$1694initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1695initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$3002formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{childrenLock:_t$3001rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$3000rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$3001|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$3000|->{clazz:_t$2999rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2999|->{name:_t$2998rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2998|->{}rearrange:(z)394:java.lang.String( sub ) do_imply n$8 _t$3002 Current Implication SUB: val$1 = n$8 (val$6 <= -1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1692initial:org.junit.runners.model.Statement*; $T0_31 = n$1693initial:void; $irvar1 = n$1694initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1695initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$3002 = n$8] |- n$8|->{childrenLock:_t$3001rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$3000rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$3001|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$3000|->{clazz:_t$2999rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2999|->{name:_t$2998rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2998|->{}rearrange:(z)394:java.lang.String( sub ) do_imply val$2 _t$3001 do_imply null null do_imply val$3 _t$3000 Current Implication SUB: val$1 = n$8 (val$6 <= -1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1692initial:org.junit.runners.model.Statement*; $T0_31 = n$1693initial:void; $irvar1 = n$1694initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1695initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$3000 = val$3; _t$3001 = val$2; _t$3002 = n$8] |- val$2|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); val$3|->{clazz:_t$2999rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$2999|->{name:_t$2998rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2998|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply null _t$2999 Current Implication SUB: val$1 = n$8 (val$6 <= -1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1692initial:org.junit.runners.model.Statement*; $T0_31 = n$1693initial:void; $irvar1 = n$1694initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1695initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$2999 = null; _t$3000 = val$3; _t$3001 = val$2; _t$3002 = n$8] |- val$2|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); null|->{name:_t$2998rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2998|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: val$1 = n$8 (val$6 <= -1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1692initial:org.junit.runners.model.Statement*; $T0_31 = n$1693initial:void; $irvar1 = n$1694initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1695initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [SUB: val$1 = n$8; _t$2999 = null; _t$3000 = val$3; _t$3001 = val$2; _t$3002 = n$8] |- null|->{name:_t$2998rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$2998|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$2: java.util.concurrent.locks.Lock( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: val$1 = n$8 (val$6 <= -1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1692initial:org.junit.runners.model.Statement*; $T0_31 = n$1693initial:void; $irvar1 = n$1694initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1695initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [SUB: val$1 = n$8; _t$2998 = @f$11; _t$2999 = null; _t$3000 = val$3; _t$3001 = val$2; _t$3002 = n$8 null|->{name:_t$2998rearrange:(z)15}rearrange:394:java.lang.Class( sub )] |- @f$11|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$2: java.util.concurrent.locks.Lock( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (val$6 <= -1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1692initial:org.junit.runners.model.Statement*; $T0_31 = n$1693initial:void; $irvar1 = n$1694initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1695initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [SUB: val$1 = n$8; _t$2998 = @f$11; _t$2999 = null; _t$3000 = val$3; _t$3001 = val$2; _t$3002 = n$8 @f$11|->{}rearrange:(z)394:java.lang.String( sub ); null|->{name:_t$2998rearrange:(z)15}rearrange:394:java.lang.Class( sub )] |- [FRAME TYPING: val$2: java.util.concurrent.locks.Lock( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] imply_pi: adding missing atom _t$2998 != "" imply_pi: adding missing atom _t$2999 != null Result of Abduction SUB: val$1 = n$8 (val$6 <= -1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1692initial:org.junit.runners.model.Statement*; $T0_31 = n$1693initial:void; $irvar1 = n$1694initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1695initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$2998 = @f$11; _t$2999 = null; _t$3000 = val$3; _t$3001 = val$2; _t$3002 = n$8 _t$2999 != null; _t$2998 != ""* @f$11|->{}rearrange:(z)394:java.lang.String( sub ); null|->{name:_t$2998rearrange:(z)15}rearrange:394:java.lang.Class( sub )] |- @f$11 != null; @f$11 != ""; null != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; @f$11|->{}rearrange:(z)394:java.lang.String( sub ); null|->{name:@f$11rearrange:(z)15}rearrange:394:java.lang.Class( sub ); val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); val$2|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:val$2rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: val$2: java.util.concurrent.locks.Lock( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE explain_dereference_as_caller_expression _t$2999: cannot explain None found error in dereference spec_pre: _t$2998 != null; _t$2998 != ""; _t$2999 != null ; this|callee = _t$3002formal:org.junit.runners.ParentRunner*( sub ) ; _t$2998|->{}rearrange:(z)394:java.lang.String( sub ); _t$2999|->{name:_t$2998rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3000|->{clazz:_t$2999rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3001|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$3001rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$3000rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) exp _t$2999 desc: EXECUTING SPEC 5/5 ACTUAL PRECONDITION = val$1 = old_this ; (val$6 <= -1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1692initial:org.junit.runners.model.Statement*; $T0_31 = n$1693initial:void; $irvar1 = n$1694initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1695initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$3007 != null; _t$3007 != ""; _t$3008 != null; _t$3010 != null ; this|callee = _t$3011formal:org.junit.runners.ParentRunner*( sub ) ; _t$3007|->{}rearrange:(z)394:java.lang.String( sub ); _t$3008|->{name:_t$3007rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3009|->{clazz:_t$3008rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3010|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:_t$3010rearrange:(z)530, testClass:_t$3009rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$3007 != null; _t$3007 != ""; _t$3008 != null; _t$3010 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$3012); MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(return|callee); UND < Annotation[] Class.getAnnotations() > :216(_t$3014); RET < Annotation[] TestClass.getAnnotations() > (_t$3014); RET < List ParentRunner.getFilteredChildren() > (_t$3010); RET < Class TestClass.getJavaClass() > (_t$3008); RET < String Class.getName() > (_t$3007); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$3014); RET < TestClass ParentRunner.getTestClass() > (_t$3009) ; return|callee = _t$3013update:403:org.junit.runner.Description* ; _t$3012|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; return|callee|->{fAnnotations:_t$3014update:397, fChildren:_t$3012update:(z)397, fDisplayName:_t$3007update:397, fTestClass:_t$3008update:397, fUniqueId:_t$3007update:397}formal(z):org.junit.runner.Description; _t$3007|->{}formal:java.lang.String( sub ); _t$3008|->{name:_t$3007formal(z)}formal(z):java.lang.Class( sub ); _t$3009|->{clazz:_t$3008formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$3010|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$3010formal(z), testClass:_t$3009formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$3007 != null; _t$3007 != ""; _t$3008 != null; _t$3010 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$3013); RET < Class TestClass.getJavaClass() > (_t$3008); RET < String Class.getName() > (_t$3007); RET < TestClass ParentRunner.getTestClass() > (_t$3009) ; return|callee = EXN _t$3013update:397:org.junit.runner.Description* ; _t$3013|->{}alloc:java.lang.IllegalArgumentException; _t$3007|->{}formal:java.lang.String( sub ); _t$3008|->{name:_t$3007formal(z)}formal(z):java.lang.Class( sub ); _t$3009|->{clazz:_t$3008formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$3010|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$3010formal(z), testClass:_t$3009formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (val$6 <= -1); UND < List ParentRunner.classRules() > :268(val$5); RET < boolean List.isEmpty() > (0) pi2: _t$3007 != null; _t$3007 != ""; _t$3008 != null; _t$3010 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (val$6 <= -1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1692initial:org.junit.runners.model.Statement*; $T0_31 = n$1693initial:void; $irvar1 = n$1694initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1695initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$3011formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{filteredChildren:_t$3010rearrange:(z)530, testClass:_t$3009rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$3010|->{}rearrange:400:java.util.List( sub ); _t$3009|->{clazz:_t$3008rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3008|->{name:_t$3007rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3007|->{}rearrange:(z)394:java.lang.String( sub ) do_imply n$8 _t$3011 Current Implication SUB: val$1 = n$8 (val$6 <= -1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1692initial:org.junit.runners.model.Statement*; $T0_31 = n$1693initial:void; $irvar1 = n$1694initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1695initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$3011 = n$8] |- n$8|->{filteredChildren:_t$3010rearrange:(z)530, testClass:_t$3009rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$3010|->{}rearrange:400:java.util.List( sub ); _t$3009|->{clazz:_t$3008rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3008|->{name:_t$3007rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3007|->{}rearrange:(z)394:java.lang.String( sub ) do_imply null _t$3010 do_imply val$3 _t$3009 Current Implication SUB: val$1 = n$8 (val$6 <= -1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1692initial:org.junit.runners.model.Statement*; $T0_31 = n$1693initial:void; $irvar1 = n$1694initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1695initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$3009 = val$3; _t$3010 = null; _t$3011 = n$8] |- null|->{}rearrange:400:java.util.List( sub ); val$3|->{clazz:_t$3008rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3008|->{name:_t$3007rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3007|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply null _t$3008 Current Implication SUB: val$1 = n$8 (val$6 <= -1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1692initial:org.junit.runners.model.Statement*; $T0_31 = n$1693initial:void; $irvar1 = n$1694initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1695initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$3008 = null; _t$3009 = val$3; _t$3010 = null; _t$3011 = n$8] |- null|->{}rearrange:400:java.util.List( sub ); null|->{name:_t$3007rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3007|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: val$1 = n$8 (val$6 <= -1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1692initial:org.junit.runners.model.Statement*; $T0_31 = n$1693initial:void; $irvar1 = n$1694initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1695initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$3008 = null; _t$3009 = val$3; _t$3010 = null; _t$3011 = n$8 null|->{}rearrange:400:java.util.List( sub )] |- null|->{name:_t$3007rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3007|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: val$1 = n$8 (val$6 <= -1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1692initial:org.junit.runners.model.Statement*; $T0_31 = n$1693initial:void; $irvar1 = n$1694initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1695initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$3007 = @f$12; _t$3008 = null; _t$3009 = val$3; _t$3010 = null; _t$3011 = n$8 null|->{name:_t$3007rearrange:(z)15}rearrange:394:java.lang.Class( sub ); null|->{}rearrange:400:java.util.List( sub )] |- @f$12|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (val$6 <= -1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1692initial:org.junit.runners.model.Statement*; $T0_31 = n$1693initial:void; $irvar1 = n$1694initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1695initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ) [SUB: val$1 = n$8; _t$3007 = @f$12; _t$3008 = null; _t$3009 = val$3; _t$3010 = null; _t$3011 = n$8 @f$12|->{}rearrange:(z)394:java.lang.String( sub ); null|->{name:_t$3007rearrange:(z)15}rearrange:394:java.lang.Class( sub ); null|->{}rearrange:400:java.util.List( sub )] |- [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] imply_pi: adding missing atom _t$3007 != "" imply_pi: adding missing atom _t$3008 != null imply_pi: adding missing atom _t$3010 != null Result of Abduction SUB: val$1 = n$8 (val$6 <= -1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1692initial:org.junit.runners.model.Statement*; $T0_31 = n$1693initial:void; $irvar1 = n$1694initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1695initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$3007 = @f$12; _t$3008 = null; _t$3009 = val$3; _t$3010 = null; _t$3011 = n$8 _t$3010 != null; _t$3008 != null; _t$3007 != ""* @f$12|->{}rearrange:(z)394:java.lang.String( sub ); null|->{name:_t$3007rearrange:(z)15}rearrange:394:java.lang.Class( sub ); null|->{}rearrange:400:java.util.List( sub )] |- @f$12 != null; @f$12 != ""; null != null; null != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; @f$12|->{}rearrange:(z)394:java.lang.String( sub ); null|->{name:@f$12rearrange:(z)15}rearrange:394:java.lang.Class( sub ); val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); null|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:nullrearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME FLD: n$8|->{childrenLock:val$2formal}formal(z):org.junit.runners.ParentRunner( sub )] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE explain_dereference_as_caller_expression _t$3008: cannot explain None found error in dereference spec_pre: _t$3007 != null; _t$3007 != ""; _t$3008 != null; _t$3010 != null ; this|callee = _t$3011formal:org.junit.runners.ParentRunner*( sub ) ; _t$3007|->{}rearrange:(z)394:java.lang.String( sub ); _t$3008|->{name:_t$3007rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3009|->{clazz:_t$3008rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3010|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:_t$3010rearrange:(z)530, testClass:_t$3009rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) exp _t$3008 desc: Instruction Returns PROP 1 of 2: val$1 = old_this ; (val$6 <= -1); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$6); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$5); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(val$2); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$5); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$4initial:org.junit.runners.model.Statement*; $T0_31 = _t$3initial:void; $irvar1 = _t$2initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$6|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$5|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$10|->{fAnnotations:_t$5update:270, fChildren:_t$6update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; old_this|->{childrenLock:val$2formal, filteredChildren:_t$0update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: val$1 = old_this ; (val$6 <= -1); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (n$10); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction *&$irvar1:org.junit.runner.Description*=n$10 [line 270] in vpath_find exp:n$1696 vpath_find: cannot find n$1696 in vpath_find exp:n$10 vpath_find: cannot find n$10 in vpath_find exp:n$1697 vpath_find: cannot find n$1697 .... Rearrangement Start .... Exp: &$irvar1 Prop: val$1 = old_this ; (val$6 <= -1); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$1696); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(n$1697); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < List Collections.unmodifiableList(ArrayList) > :534(n$1698); LOCKED(val$2); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (n$1698); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (n$1697); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1699initial:org.junit.runners.model.Statement*; $T0_31 = n$1700initial:void; $irvar1 = n$1701initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1702initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); n$1697|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; n$1696|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:n$1697update:270, fChildren:n$1696update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; old_this|->{childrenLock:val$2formal, filteredChildren:n$1698update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 1: val$1 = old_this ; (val$6 <= -1); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(val$2); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$5initial:org.junit.runners.model.Statement*; $T0_31 = _t$4initial:void; $irvar1 = n$10update:270:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$3|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$2|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); $irvar1|->{fAnnotations:_t$2update:270, fChildren:_t$3update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; old_this|->{childrenLock:val$2formal, filteredChildren:_t$0update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Skipping instr *&$irvar1:org.junit.runner.Description*=n$10 [line 270] due to exception Instruction NULLIFY(&this); [line 270] in vpath_find exp:_t$3 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$3 in vpath_find exp:n$10 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find n$10 in vpath_find exp:_t$2 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$2 Instruction Returns PROP 1 of 1: val$1 = old_this ; (val$6 <= -1); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(val$2); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$5initial:org.junit.runners.model.Statement*; $T0_31 = _t$4initial:void; $irvar1 = n$10update:270:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$3|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$2|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); $irvar1|->{fAnnotations:_t$2update:270, fChildren:_t$3update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; old_this|->{childrenLock:val$2formal, filteredChildren:_t$0update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction NULLIFY(&this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: val$1 = old_this ; (val$6 <= -1); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (n$10); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction EXIT_SCOPE(_,n$8,n$10,this); [line 270] in vpath_find exp:_t$3 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$3 in vpath_find exp:n$10 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find n$10 in vpath_find exp:_t$2 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$2 Instruction Returns PROP 1 of 1: (val$6 <= -1); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$4); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(val$2); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$3); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$6initial:org.junit.runners.model.Statement*; $T0_31 = _t$5initial:void; $irvar1 = _t$2update:270:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$4|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$3|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $irvar1|->{fAnnotations:_t$3update:270, fChildren:_t$4update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:_t$0update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction EXIT_SCOPE(_,n$8,n$10,this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: (val$6 <= -1); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (_t$4); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) .... After Symbolic Execution .... PROP 1 of 2: (val$6 <= -1); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$4); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$0); LOCKED(val$2); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (_t$0); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$3); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$6initial:org.junit.runners.model.Statement*; $T0_31 = _t$5initial:void; $irvar1 = _t$2update:270:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$1initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$4|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$3|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $irvar1|->{fAnnotations:_t$3update:270, fChildren:_t$4update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:_t$0update:(z)270, testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: (val$6 <= -1); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (_t$4); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal(z):java.util.concurrent.locks.Lock( sub ); old_this|->{childrenLock:val$2formal, filteredChildren:nullformal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub )
node10#session188(270) biabduction **** [RE:Pending] Statement ParentRunner.withClassRules(RunBefores) Node: 10, Procedure: Statement ParentRunner.withClassRules(RunBefores), Todo: 1 **** PROP 1 of 1: (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = val$1formal:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) .... Instructions: .... n$8=*&this:org.junit.runners.ParentRunner* [line 270]; _=*n$8:org.junit.runners.ParentRunner [line 270]; n$10=_fun_Description ParentRunner.getDescription()(n$8:org.junit.runners.ParentRunner*) virtual [line 270]; *&$irvar1:org.junit.runner.Description*=n$10 [line 270]; NULLIFY(&this); [line 270]; EXIT_SCOPE(_,n$8,n$10,this); [line 270]; Processing prop 1/1 Instruction n$8=*&this:org.junit.runners.ParentRunner* [line 270] .... Rearrangement Start .... Exp: &this Prop: (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1843initial:org.junit.runners.model.Statement*; $T0_31 = n$1844initial:void; $irvar1 = n$1845initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1846initial:void; this = val$1formal:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 1: val$1 = old_this ; (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction _=*n$8:org.junit.runners.ParentRunner [line 270] .... Rearrangement Start .... Exp: n$8 Prop: val$1 = old_this ; (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1847initial:org.junit.runners.model.Statement*; $T0_31 = n$1848initial:void; $irvar1 = n$1849initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1850initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 1: val$1 = old_this ; (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction n$10=_fun_Description ParentRunner.getDescription()(n$8:org.junit.runners.ParentRunner*) virtual [line 270] Found 5 specs for function org.junit.runners.ParentRunner.getDescription():org.junit.runner.Description START EXECUTING SPECS FOR org.junit.runners.ParentRunner.getDescription():org.junit.runner.Description from state val$1 = old_this ; (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1851initial:org.junit.runners.model.Statement*; $T0_31 = n$1852initial:void; $irvar1 = n$1853initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1854initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) EXECUTING SPEC 1/5 ACTUAL PRECONDITION = val$1 = old_this ; (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1851initial:org.junit.runners.model.Statement*; $T0_31 = n$1852initial:void; $irvar1 = n$1853initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1854initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: this|callee = _t$3262formal:org.junit.runners.ParentRunner*( sub ) ; _t$3260|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3261|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$3261rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$3260rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$3263); MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(return|callee); MEMna < Annotation[] ParentRunner.getRunnerAnnotations():395 > {vpath: }(_t$3264); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$3266); LOCKED(_t$3261); RET < Annotation[] TestClass.getAnnotations() > (_t$3264); RET < List ParentRunner.getFilteredChildren() > (_t$3266); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$3264); RET < TestClass ParentRunner.getTestClass() > (_t$3260) ; return|callee = _t$3265update:403:org.junit.runner.Description* ; _t$3263|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$3264|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$3264update:395, fChildren:_t$3263update:(z)395, fDisplayName:"null"update:395, fTestClass:nullupdate:395, fUniqueId:"null"update:395}formal(z):org.junit.runner.Description; _t$3260|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$3261|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$3261formal, filteredChildren:_t$3266update:(z)400, testClass:_t$3260formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$3266); RET < TestClass ParentRunner.getTestClass() > (_t$3260) ; return|callee = EXN _t$3266update:395:org.junit.runner.Description* ; _t$3266|->{}alloc:java.lang.IllegalArgumentException; _t$3260|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$3261|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$3261formal, filteredChildren:nullformal(z), testClass:_t$3260formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268(val$5); RET < boolean List.isEmpty() > (0) pi2: returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1851initial:org.junit.runners.model.Statement*; $T0_31 = n$1852initial:void; $irvar1 = n$1853initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1854initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$3262formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{childrenLock:_t$3261rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$3260rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$3261|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$3260|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply n$8 _t$3262 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1851initial:org.junit.runners.model.Statement*; $T0_31 = n$1852initial:void; $irvar1 = n$1853initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1854initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$3262 = n$8] |- n$8|->{childrenLock:_t$3261rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$3260rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$3261|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$3260|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply val$2 _t$3260 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1851initial:org.junit.runners.model.Statement*; $T0_31 = n$1852initial:void; $irvar1 = n$1853initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1854initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ) [SUB: val$1 = n$8; _t$3260 = val$2; _t$3261 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$3262 = n$8 %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3 = null MISSING FLD: n$8|->{childrenLock:_t$3261rearrange:531, filteredChildren:nullrearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); val$2|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$3 null Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1851initial:org.junit.runners.model.Statement*; $T0_31 = n$1852initial:void; $irvar1 = n$1853initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1854initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ) [SUB: val$1 = n$8; _t$3260 = val$2; _t$3261 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$3262 = n$8 val$3 = null; %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3 = null MISSING FLD: n$8|->{childrenLock:_t$3261rearrange:531, filteredChildren:nullrearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) [FRAME TYPING: val$2: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1851initial:org.junit.runners.model.Statement*; $T0_31 = n$1852initial:void; $irvar1 = n$1853initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1854initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ) [SUB: val$1 = n$8; _t$3260 = val$2; _t$3261 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$3262 = n$8 val$3 = null; %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$3261rearrange:531, filteredChildren:nullrearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub )] |- [FRAME TYPING: val$2: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Result of Abduction SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1851initial:org.junit.runners.model.Statement*; $T0_31 = n$1852initial:void; $irvar1 = n$1853initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1854initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$3260 = val$2; _t$3261 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$3262 = n$8 val$3 = null; %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$3261rearrange:531, filteredChildren:nullrearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub )] |- this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$2|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:%path%n8_org.junit.runners.ParentRunner.childrenLock$-3rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:val$2rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: val$2: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE WARNING: Missing fields hpred has non-footprint vars: n$8|->{childrenLock:%path%n8_org.junit.runners.ParentRunner.childrenLock$-3rearrange:531, filteredChildren:nullrearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub ) Implication error: missing_sigma not empty in re-execution EXECUTING SPEC 2/5 ACTUAL PRECONDITION = val$1 = old_this ; (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1851initial:org.junit.runners.model.Statement*; $T0_31 = n$1852initial:void; $irvar1 = n$1853initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1854initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$3268 != null ; this|callee = _t$3269formal:org.junit.runners.ParentRunner*( sub ) ; _t$3267|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3268|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:_t$3268rearrange:(z)530, testClass:_t$3267rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$3268 != null; MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$3270); MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(return|callee); MEMna < Annotation[] ParentRunner.getRunnerAnnotations():395 > {vpath: }(_t$3271); RET < Annotation[] TestClass.getAnnotations() > (_t$3271); RET < List ParentRunner.getFilteredChildren() > (_t$3268); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$3271); RET < TestClass ParentRunner.getTestClass() > (_t$3267) ; return|callee = _t$3272update:403:org.junit.runner.Description* ; _t$3270|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$3271|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$3271update:395, fChildren:_t$3270update:(z)395, fDisplayName:"null"update:395, fTestClass:nullupdate:395, fUniqueId:"null"update:395}formal(z):org.junit.runner.Description; _t$3267|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$3268|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$3268formal(z), testClass:_t$3267formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$3268 != null; MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$3272); RET < TestClass ParentRunner.getTestClass() > (_t$3267) ; return|callee = EXN _t$3272update:395:org.junit.runner.Description* ; _t$3272|->{}alloc:java.lang.IllegalArgumentException; _t$3267|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$3268|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$3268formal(z), testClass:_t$3267formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268(val$5); RET < boolean List.isEmpty() > (0) pi2: _t$3268 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1851initial:org.junit.runners.model.Statement*; $T0_31 = n$1852initial:void; $irvar1 = n$1853initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1854initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$3269formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{filteredChildren:_t$3268rearrange:(z)530, testClass:_t$3267rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$3268|->{}rearrange:400:java.util.List( sub ); _t$3267|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply n$8 _t$3269 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1851initial:org.junit.runners.model.Statement*; $T0_31 = n$1852initial:void; $irvar1 = n$1853initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1854initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$3269 = n$8] |- n$8|->{filteredChildren:_t$3268rearrange:(z)530, testClass:_t$3267rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$3268|->{}rearrange:400:java.util.List( sub ); _t$3267|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply val$2 _t$3267 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1851initial:org.junit.runners.model.Statement*; $T0_31 = n$1852initial:void; $irvar1 = n$1853initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1854initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ) [SUB: val$1 = n$8; _t$3267 = val$2; _t$3268 = %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3; _t$3269 = n$8 MISSING FLD: n$8|->{filteredChildren:_t$3268rearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3|->{}rearrange:400:java.util.List( sub ); val$2|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$3 null Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1851initial:org.junit.runners.model.Statement*; $T0_31 = n$1852initial:void; $irvar1 = n$1853initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1854initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ) [SUB: val$1 = n$8; _t$3267 = val$2; _t$3268 = %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3; _t$3269 = n$8 val$3 = null MISSING FLD: n$8|->{filteredChildren:_t$3268rearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3|->{}rearrange:400:java.util.List( sub ) [FRAME TYPING: val$2: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1851initial:org.junit.runners.model.Statement*; $T0_31 = n$1852initial:void; $irvar1 = n$1853initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1854initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ) [SUB: val$1 = n$8; _t$3267 = val$2; _t$3268 = %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3; _t$3269 = n$8 val$3 = null* %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3|->{}rearrange:400:java.util.List( sub ) MISSING FLD: n$8|->{filteredChildren:_t$3268rearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub )] |- [FRAME TYPING: val$2: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Result of Abduction SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1851initial:org.junit.runners.model.Statement*; $T0_31 = n$1852initial:void; $irvar1 = n$1853initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1854initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$3267 = val$2; _t$3268 = %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3; _t$3269 = n$8 val$3 = null* %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3|->{}rearrange:400:java.util.List( sub ) MISSING FLD: n$8|->{filteredChildren:_t$3268rearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3 != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$2|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:%path%n8_org.junit.runners.ParentRunner.filteredChildren$-3rearrange:(z)530, testClass:val$2rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: val$2: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE WARNING: Missing fields hpred has non-footprint vars: n$8|->{filteredChildren:%path%n8_org.junit.runners.ParentRunner.filteredChildren$-3rearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub ) Implication error: missing_sigma not empty in re-execution EXECUTING SPEC 3/5 ACTUAL PRECONDITION = val$1 = old_this ; (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1851initial:org.junit.runners.model.Statement*; $T0_31 = n$1852initial:void; $irvar1 = n$1853initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1854initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$3273 != null ; this|callee = _t$3275formal:org.junit.runners.ParentRunner*( sub ) ; _t$3273|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3274|->{clazz:_t$3273rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:_t$3274rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) POST 1 of 1: _t$3273 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$3276); RET < Class TestClass.getJavaClass() > (_t$3273); RET < TestClass ParentRunner.getTestClass() > (_t$3274) ; return|callee = EXN _t$3276update:397:org.junit.runner.Description* ; _t$3276|->{}alloc:java.lang.IllegalArgumentException; _t$3273|->{name:""formal(z)}formal(z):java.lang.Class( sub ); _t$3274|->{clazz:_t$3273formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:_t$3274formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268(val$5); RET < boolean List.isEmpty() > (0) pi2: _t$3273 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1851initial:org.junit.runners.model.Statement*; $T0_31 = n$1852initial:void; $irvar1 = n$1853initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1854initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$3275formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{testClass:_t$3274rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$3274|->{clazz:_t$3273rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3273|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1851initial:org.junit.runners.model.Statement*; $T0_31 = n$1852initial:void; $irvar1 = n$1853initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1854initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$3275formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{testClass:_t$3274rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$3274|->{clazz:_t$3273rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3273|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: ""|->{count:_t$3294none, hash:_t$3295none, offset:_t$3296none, value:_t$3297none}none:java.lang.String] [FRAME TYPING: "": java.lang.String ] do_imply n$8 _t$3275 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1851initial:org.junit.runners.model.Statement*; $T0_31 = n$1852initial:void; $irvar1 = n$1853initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1854initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$3275 = n$8] |- n$8|->{testClass:_t$3274rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$3274|->{clazz:_t$3273rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3273|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: ""|->{count:_t$3294none, hash:_t$3295none, offset:_t$3296none, value:_t$3297none}none:java.lang.String] [FRAME TYPING: "": java.lang.String ] do_imply val$2 _t$3274 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1851initial:org.junit.runners.model.Statement*; $T0_31 = n$1852initial:void; $irvar1 = n$1853initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1854initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ) [SUB: val$1 = n$8; _t$3274 = val$2; _t$3275 = n$8] |- val$2|->{clazz:_t$3273rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3273|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: ""|->{count:_t$3294none, hash:_t$3295none, offset:_t$3296none, value:_t$3297none}none:java.lang.String] [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] do_imply val$3 _t$3273 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1851initial:org.junit.runners.model.Statement*; $T0_31 = n$1852initial:void; $irvar1 = n$1853initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1854initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ) [SUB: val$1 = n$8; _t$3273 = val$3; _t$3274 = val$2; _t$3275 = n$8] |- val$3|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: ""|->{count:_t$3294none, hash:_t$3295none, offset:_t$3296none, value:_t$3297none}none:java.lang.String] [FRAME TYPING: val$2: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] do_imply "" "" Final Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1851initial:org.junit.runners.model.Statement*; $T0_31 = n$1852initial:void; $irvar1 = n$1853initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1854initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ) [SUB: val$1 = n$8; _t$3273 = val$3; _t$3274 = val$2; _t$3275 = n$8] |- [FRAME FLD: ""|->{count:_t$3294none, hash:_t$3295none, offset:_t$3296none, value:_t$3297none}none:java.lang.String] [FRAME TYPING: val$3: java.lang.Class( sub ) val$2: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] Result of Abduction SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1851initial:org.junit.runners.model.Statement*; $T0_31 = n$1852initial:void; $irvar1 = n$1853initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1854initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$3273 = val$3; _t$3274 = val$2; _t$3275 = n$8] |- val$3 != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$3|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); val$2|->{clazz:val$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:val$2rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME FLD: ""|->{count:_t$3294none, hash:_t$3295none, offset:_t$3296none, value:_t$3297none}none:java.lang.String] [FRAME TYPING: val$3: java.lang.Class( sub ) val$2: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] returning TRUE in vpath_find exp:_t$3276 vpath_find: cannot find _t$3276 New footprint: Frame fld: ""|->{count:_t$3294none, hash:_t$3295none, offset:_t$3296none, value:_t$3297none}none:java.lang.String Frame typ: val$3: java.lang.Class( sub ) val$2: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String Missing fld: Instantiated frame: val$5|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); &classRules|->val$5update:268:java.util.List*; &$RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->val$5formal:java.util.List*( sub ); &$irvar0|->0nullify:void; &return|->n$1851initial:org.junit.runners.model.Statement*; &$T0_31|->n$1852initial:void; &$irvar1|->n$1853initial:void; &statement|->val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); &old_statement|->val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); &$irvar2|->n$1854initial:void; &this|->n$8formal:org.junit.runners.ParentRunner*( sub ); &old_this|->n$8formal:org.junit.runners.ParentRunner*( sub ) Instantiated post: PROP 1 of 1: val$3 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3276); RET < Class TestClass.getJavaClass() > (val$3); RET < TestClass ParentRunner.getTestClass() > (val$2) ; return|callee = EXN _t$3276update:270:org.junit.runner.Description* ; _t$3276|->{}alloc:java.lang.IllegalArgumentException; val$3|->{name:""formal(z)}formal(z):java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); n$8|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** RESULTS FUNCTION CALL ******* PROP 1 of 1: val$1 = old_this ; (-1 < val$6); val$6 != 1; val$3 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Class TestClass.getJavaClass() > (val$3); RET < TestClass ParentRunner.getTestClass() > (val$2); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = n$1852initial:void; $irvar1 = n$1853initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1854initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal(z):java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** END RESULTS FUNCTION CALL ******* pvar: classRules found error in dereference spec_pre: val$1 = old_this ; (-1 < val$6); val$6 != 1; val$3 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3276); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Class TestClass.getJavaClass() > (val$3); RET < TestClass ParentRunner.getTestClass() > (val$2); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$3276update:270:org.junit.runners.model.Statement*; $T0_31 = n$1852initial:void; $irvar1 = n$1853initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1854initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$3276|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal(z):java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) exp val$5 desc: Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] EXECUTING SPEC 4/5 ACTUAL PRECONDITION = val$1 = old_this ; (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1851initial:org.junit.runners.model.Statement*; $T0_31 = n$1852initial:void; $irvar1 = n$1853initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1854initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$3277 != null; _t$3277 != ""; _t$3278 != null ; this|callee = _t$3281formal:org.junit.runners.ParentRunner*( sub ) ; _t$3277|->{}rearrange:(z)394:java.lang.String( sub ); _t$3278|->{name:_t$3277rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3279|->{clazz:_t$3278rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3280|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$3280rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$3279rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$3277 != null; _t$3277 != ""; _t$3278 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$3282); MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(return|callee); UND < Annotation[] Class.getAnnotations() > :216(_t$3284); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$3285); LOCKED(_t$3280); RET < Annotation[] TestClass.getAnnotations() > (_t$3284); RET < List ParentRunner.getFilteredChildren() > (_t$3285); RET < Class TestClass.getJavaClass() > (_t$3278); RET < String Class.getName() > (_t$3277); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$3284); RET < TestClass ParentRunner.getTestClass() > (_t$3279) ; return|callee = _t$3283update:403:org.junit.runner.Description* ; _t$3282|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; return|callee|->{fAnnotations:_t$3284update:397, fChildren:_t$3282update:(z)397, fDisplayName:_t$3277update:397, fTestClass:_t$3278update:397, fUniqueId:_t$3277update:397}formal(z):org.junit.runner.Description; _t$3277|->{}formal:java.lang.String( sub ); _t$3278|->{name:_t$3277formal(z)}formal(z):java.lang.Class( sub ); _t$3279|->{clazz:_t$3278formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$3280|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$3280formal, filteredChildren:_t$3285update:(z)400, testClass:_t$3279formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$3277 != null; _t$3277 != ""; _t$3278 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$3285); RET < Class TestClass.getJavaClass() > (_t$3278); RET < String Class.getName() > (_t$3277); RET < TestClass ParentRunner.getTestClass() > (_t$3279) ; return|callee = EXN _t$3285update:397:org.junit.runner.Description* ; _t$3285|->{}alloc:java.lang.IllegalArgumentException; _t$3277|->{}formal:java.lang.String( sub ); _t$3278|->{name:_t$3277formal(z)}formal(z):java.lang.Class( sub ); _t$3279|->{clazz:_t$3278formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$3280|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$3280formal, filteredChildren:nullformal(z), testClass:_t$3279formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268(val$5); RET < boolean List.isEmpty() > (0) pi2: _t$3277 != null; _t$3277 != ""; _t$3278 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1851initial:org.junit.runners.model.Statement*; $T0_31 = n$1852initial:void; $irvar1 = n$1853initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1854initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$3281formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{childrenLock:_t$3280rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$3279rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$3280|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$3279|->{clazz:_t$3278rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3278|->{name:_t$3277rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3277|->{}rearrange:(z)394:java.lang.String( sub ) do_imply n$8 _t$3281 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1851initial:org.junit.runners.model.Statement*; $T0_31 = n$1852initial:void; $irvar1 = n$1853initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1854initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$3281 = n$8] |- n$8|->{childrenLock:_t$3280rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$3279rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$3280|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$3279|->{clazz:_t$3278rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3278|->{name:_t$3277rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3277|->{}rearrange:(z)394:java.lang.String( sub ) do_imply val$2 _t$3279 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1851initial:org.junit.runners.model.Statement*; $T0_31 = n$1852initial:void; $irvar1 = n$1853initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1854initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ) [SUB: val$1 = n$8; _t$3279 = val$2; _t$3280 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$3281 = n$8 %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3 = null MISSING FLD: n$8|->{childrenLock:_t$3280rearrange:531, filteredChildren:nullrearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); val$2|->{clazz:_t$3278rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3278|->{name:_t$3277rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3277|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$3 _t$3278 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1851initial:org.junit.runners.model.Statement*; $T0_31 = n$1852initial:void; $irvar1 = n$1853initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1854initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ) [SUB: val$1 = n$8; _t$3278 = val$3; _t$3279 = val$2; _t$3280 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$3281 = n$8 %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3 = null MISSING FLD: n$8|->{childrenLock:_t$3280rearrange:531, filteredChildren:nullrearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); val$3|->{name:_t$3277rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3277|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$2: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1851initial:org.junit.runners.model.Statement*; $T0_31 = n$1852initial:void; $irvar1 = n$1853initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1854initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ) [SUB: val$1 = n$8; _t$3278 = val$3; _t$3279 = val$2; _t$3280 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$3281 = n$8 %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$3280rearrange:531, filteredChildren:nullrearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub )] |- val$3|->{name:_t$3277rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3277|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$2: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] do_imply "" _t$3277 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1851initial:org.junit.runners.model.Statement*; $T0_31 = n$1852initial:void; $irvar1 = n$1853initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1854initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ) [SUB: val$1 = n$8; _t$3277 = ""; _t$3278 = val$3; _t$3279 = val$2; _t$3280 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$3281 = n$8 %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$3280rearrange:531, filteredChildren:nullrearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub )] |- ""|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$3: java.lang.Class( sub ) val$2: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1851initial:org.junit.runners.model.Statement*; $T0_31 = n$1852initial:void; $irvar1 = n$1853initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1854initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ) [SUB: val$1 = n$8; _t$3277 = ""; _t$3278 = val$3; _t$3279 = val$2; _t$3280 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$3281 = n$8 %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$3280rearrange:531, filteredChildren:nullrearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub )] |- [FRAME FLD: ""|->{count:_t$3298none, hash:_t$3299none, offset:_t$3300none, value:_t$3301none}none:java.lang.String] [FRAME TYPING: "": java.lang.String val$3: java.lang.Class( sub ) val$2: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] imply_pi: adding missing atom _t$3277 != null imply_pi: adding missing atom _t$3277 != "" Result of Abduction SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1851initial:org.junit.runners.model.Statement*; $T0_31 = n$1852initial:void; $irvar1 = n$1853initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1854initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$3277 = ""; _t$3278 = val$3; _t$3279 = val$2; _t$3280 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$3281 = n$8 _t$3277 != ""; _t$3277 != null; %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$3280rearrange:531, filteredChildren:nullrearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub )] |- "" != null; "" != ""; val$3 != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; ""|->{}rearrange:(z)394:java.lang.String( sub ); val$3|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); val$2|->{clazz:val$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:%path%n8_org.junit.runners.ParentRunner.childrenLock$-3rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:val$2rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME FLD: ""|->{count:_t$3298none, hash:_t$3299none, offset:_t$3300none, value:_t$3301none}none:java.lang.String] [FRAME TYPING: "": java.lang.String val$3: java.lang.Class( sub ) val$2: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE WARNING: Missing fields hpred has non-footprint vars: n$8|->{childrenLock:%path%n8_org.junit.runners.ParentRunner.childrenLock$-3rearrange:531, filteredChildren:nullrearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub ) Implication error: missing_sigma not empty in re-execution EXECUTING SPEC 5/5 ACTUAL PRECONDITION = val$1 = old_this ; (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1851initial:org.junit.runners.model.Statement*; $T0_31 = n$1852initial:void; $irvar1 = n$1853initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1854initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$3286 != null; _t$3286 != ""; _t$3287 != null; _t$3289 != null ; this|callee = _t$3290formal:org.junit.runners.ParentRunner*( sub ) ; _t$3286|->{}rearrange:(z)394:java.lang.String( sub ); _t$3287|->{name:_t$3286rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3288|->{clazz:_t$3287rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3289|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:_t$3289rearrange:(z)530, testClass:_t$3288rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$3286 != null; _t$3286 != ""; _t$3287 != null; _t$3289 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$3291); MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(return|callee); UND < Annotation[] Class.getAnnotations() > :216(_t$3293); RET < Annotation[] TestClass.getAnnotations() > (_t$3293); RET < List ParentRunner.getFilteredChildren() > (_t$3289); RET < Class TestClass.getJavaClass() > (_t$3287); RET < String Class.getName() > (_t$3286); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$3293); RET < TestClass ParentRunner.getTestClass() > (_t$3288) ; return|callee = _t$3292update:403:org.junit.runner.Description* ; _t$3291|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; return|callee|->{fAnnotations:_t$3293update:397, fChildren:_t$3291update:(z)397, fDisplayName:_t$3286update:397, fTestClass:_t$3287update:397, fUniqueId:_t$3286update:397}formal(z):org.junit.runner.Description; _t$3286|->{}formal:java.lang.String( sub ); _t$3287|->{name:_t$3286formal(z)}formal(z):java.lang.Class( sub ); _t$3288|->{clazz:_t$3287formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$3289|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$3289formal(z), testClass:_t$3288formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$3286 != null; _t$3286 != ""; _t$3287 != null; _t$3289 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$3292); RET < Class TestClass.getJavaClass() > (_t$3287); RET < String Class.getName() > (_t$3286); RET < TestClass ParentRunner.getTestClass() > (_t$3288) ; return|callee = EXN _t$3292update:397:org.junit.runner.Description* ; _t$3292|->{}alloc:java.lang.IllegalArgumentException; _t$3286|->{}formal:java.lang.String( sub ); _t$3287|->{name:_t$3286formal(z)}formal(z):java.lang.Class( sub ); _t$3288|->{clazz:_t$3287formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$3289|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$3289formal(z), testClass:_t$3288formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268(val$5); RET < boolean List.isEmpty() > (0) pi2: _t$3286 != null; _t$3286 != ""; _t$3287 != null; _t$3289 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1851initial:org.junit.runners.model.Statement*; $T0_31 = n$1852initial:void; $irvar1 = n$1853initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1854initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$3290formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{filteredChildren:_t$3289rearrange:(z)530, testClass:_t$3288rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$3289|->{}rearrange:400:java.util.List( sub ); _t$3288|->{clazz:_t$3287rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3287|->{name:_t$3286rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3286|->{}rearrange:(z)394:java.lang.String( sub ) do_imply n$8 _t$3290 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1851initial:org.junit.runners.model.Statement*; $T0_31 = n$1852initial:void; $irvar1 = n$1853initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1854initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$3290 = n$8] |- n$8|->{filteredChildren:_t$3289rearrange:(z)530, testClass:_t$3288rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$3289|->{}rearrange:400:java.util.List( sub ); _t$3288|->{clazz:_t$3287rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3287|->{name:_t$3286rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3286|->{}rearrange:(z)394:java.lang.String( sub ) do_imply val$2 _t$3288 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1851initial:org.junit.runners.model.Statement*; $T0_31 = n$1852initial:void; $irvar1 = n$1853initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1854initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ) [SUB: val$1 = n$8; _t$3288 = val$2; _t$3289 = %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3; _t$3290 = n$8 MISSING FLD: n$8|->{filteredChildren:_t$3289rearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3|->{}rearrange:400:java.util.List( sub ); val$2|->{clazz:_t$3287rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3287|->{name:_t$3286rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3286|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$3 _t$3287 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1851initial:org.junit.runners.model.Statement*; $T0_31 = n$1852initial:void; $irvar1 = n$1853initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1854initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ) [SUB: val$1 = n$8; _t$3287 = val$3; _t$3288 = val$2; _t$3289 = %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3; _t$3290 = n$8 MISSING FLD: n$8|->{filteredChildren:_t$3289rearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3|->{}rearrange:400:java.util.List( sub ); val$3|->{name:_t$3286rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3286|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$2: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1851initial:org.junit.runners.model.Statement*; $T0_31 = n$1852initial:void; $irvar1 = n$1853initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1854initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ) [SUB: val$1 = n$8; _t$3287 = val$3; _t$3288 = val$2; _t$3289 = %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3; _t$3290 = n$8 %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3|->{}rearrange:400:java.util.List( sub ) MISSING FLD: n$8|->{filteredChildren:_t$3289rearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub )] |- val$3|->{name:_t$3286rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3286|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$2: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] do_imply "" _t$3286 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1851initial:org.junit.runners.model.Statement*; $T0_31 = n$1852initial:void; $irvar1 = n$1853initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1854initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ) [SUB: val$1 = n$8; _t$3286 = ""; _t$3287 = val$3; _t$3288 = val$2; _t$3289 = %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3; _t$3290 = n$8 %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3|->{}rearrange:400:java.util.List( sub ) MISSING FLD: n$8|->{filteredChildren:_t$3289rearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub )] |- ""|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$3: java.lang.Class( sub ) val$2: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1851initial:org.junit.runners.model.Statement*; $T0_31 = n$1852initial:void; $irvar1 = n$1853initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1854initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ) [SUB: val$1 = n$8; _t$3286 = ""; _t$3287 = val$3; _t$3288 = val$2; _t$3289 = %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3; _t$3290 = n$8 %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3|->{}rearrange:400:java.util.List( sub ) MISSING FLD: n$8|->{filteredChildren:_t$3289rearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub )] |- [FRAME FLD: ""|->{count:_t$3302none, hash:_t$3303none, offset:_t$3304none, value:_t$3305none}none:java.lang.String] [FRAME TYPING: "": java.lang.String val$3: java.lang.Class( sub ) val$2: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] imply_pi: adding missing atom _t$3286 != null imply_pi: adding missing atom _t$3286 != "" Result of Abduction SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1851initial:org.junit.runners.model.Statement*; $T0_31 = n$1852initial:void; $irvar1 = n$1853initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1854initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$3286 = ""; _t$3287 = val$3; _t$3288 = val$2; _t$3289 = %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3; _t$3290 = n$8 _t$3286 != ""; _t$3286 != null* %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3|->{}rearrange:400:java.util.List( sub ) MISSING FLD: n$8|->{filteredChildren:_t$3289rearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub )] |- "" != null; "" != ""; val$3 != null; %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3 != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; ""|->{}rearrange:(z)394:java.lang.String( sub ); val$3|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); val$2|->{clazz:val$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:%path%n8_org.junit.runners.ParentRunner.filteredChildren$-3rearrange:(z)530, testClass:val$2rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME FLD: ""|->{count:_t$3302none, hash:_t$3303none, offset:_t$3304none, value:_t$3305none}none:java.lang.String] [FRAME TYPING: "": java.lang.String val$3: java.lang.Class( sub ) val$2: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE WARNING: Missing fields hpred has non-footprint vars: n$8|->{filteredChildren:%path%n8_org.junit.runners.ParentRunner.filteredChildren$-3rearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub ) Implication error: missing_sigma not empty in re-execution Instruction Returns PROP 1 of 1: val$1 = old_this ; (-1 < val$6); val$6 != 1; val$3 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (n$10); RET < Class TestClass.getJavaClass() > (val$3); RET < TestClass ParentRunner.getTestClass() > (val$2); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal(z):java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Skipping instr *&$irvar1:org.junit.runner.Description*=n$10 [line 270] due to exception Instruction NULLIFY(&this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: val$1 = old_this ; (-1 < val$6); val$6 != 1; val$3 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (n$10); RET < Class TestClass.getJavaClass() > (val$3); RET < TestClass ParentRunner.getTestClass() > (val$2); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal(z):java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction EXIT_SCOPE(_,n$8,n$10,this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: (-1 < val$6); val$6 != 1; val$3 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (_t$4); RET < Class TestClass.getJavaClass() > (val$3); RET < TestClass ParentRunner.getTestClass() > (val$2); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal(z):java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) .... After Symbolic Execution .... PROP 1 of 1: (-1 < val$6); val$6 != 1; val$3 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (_t$4); RET < Class TestClass.getJavaClass() > (val$3); RET < TestClass ParentRunner.getTestClass() > (val$2); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal(z):java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub )
node10#session198(270) biabduction **** [RE:Pending] Statement ParentRunner.withClassRules(RunBefores) Node: 10, Procedure: Statement ParentRunner.withClassRules(RunBefores), Todo: 1 **** PROP 1 of 1: (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = val$1formal:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) .... Instructions: .... n$8=*&this:org.junit.runners.ParentRunner* [line 270]; _=*n$8:org.junit.runners.ParentRunner [line 270]; n$10=_fun_Description ParentRunner.getDescription()(n$8:org.junit.runners.ParentRunner*) virtual [line 270]; *&$irvar1:org.junit.runner.Description*=n$10 [line 270]; NULLIFY(&this); [line 270]; EXIT_SCOPE(_,n$8,n$10,this); [line 270]; Processing prop 1/1 Instruction n$8=*&this:org.junit.runners.ParentRunner* [line 270] .... Rearrangement Start .... Exp: &this Prop: (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1928initial:org.junit.runners.model.Statement*; $T0_31 = n$1929initial:void; $irvar1 = n$1930initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1931initial:void; this = val$1formal:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 1: val$1 = old_this ; (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction _=*n$8:org.junit.runners.ParentRunner [line 270] .... Rearrangement Start .... Exp: n$8 Prop: val$1 = old_this ; (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1932initial:org.junit.runners.model.Statement*; $T0_31 = n$1933initial:void; $irvar1 = n$1934initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1935initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 1: val$1 = old_this ; (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction n$10=_fun_Description ParentRunner.getDescription()(n$8:org.junit.runners.ParentRunner*) virtual [line 270] Found 5 specs for function org.junit.runners.ParentRunner.getDescription():org.junit.runner.Description START EXECUTING SPECS FOR org.junit.runners.ParentRunner.getDescription():org.junit.runner.Description from state val$1 = old_this ; (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1936initial:org.junit.runners.model.Statement*; $T0_31 = n$1937initial:void; $irvar1 = n$1938initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1939initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) EXECUTING SPEC 1/5 ACTUAL PRECONDITION = val$1 = old_this ; (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1936initial:org.junit.runners.model.Statement*; $T0_31 = n$1937initial:void; $irvar1 = n$1938initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1939initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: this|callee = _t$3432formal:org.junit.runners.ParentRunner*( sub ) ; _t$3430|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3431|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$3431rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$3430rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$3433); MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(return|callee); MEMna < Annotation[] ParentRunner.getRunnerAnnotations():395 > {vpath: }(_t$3434); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$3436); LOCKED(_t$3431); RET < Annotation[] TestClass.getAnnotations() > (_t$3434); RET < List ParentRunner.getFilteredChildren() > (_t$3436); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$3434); RET < TestClass ParentRunner.getTestClass() > (_t$3430) ; return|callee = _t$3435update:403:org.junit.runner.Description* ; _t$3433|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$3434|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$3434update:395, fChildren:_t$3433update:(z)395, fDisplayName:"null"update:395, fTestClass:nullupdate:395, fUniqueId:"null"update:395}formal(z):org.junit.runner.Description; _t$3430|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$3431|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$3431formal, filteredChildren:_t$3436update:(z)400, testClass:_t$3430formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$3436); RET < TestClass ParentRunner.getTestClass() > (_t$3430) ; return|callee = EXN _t$3436update:395:org.junit.runner.Description* ; _t$3436|->{}alloc:java.lang.IllegalArgumentException; _t$3430|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$3431|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$3431formal, filteredChildren:nullformal(z), testClass:_t$3430formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268(val$5); RET < boolean List.isEmpty() > (0) pi2: returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1936initial:org.junit.runners.model.Statement*; $T0_31 = n$1937initial:void; $irvar1 = n$1938initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1939initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$3432formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{childrenLock:_t$3431rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$3430rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$3431|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$3430|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply n$8 _t$3432 Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1936initial:org.junit.runners.model.Statement*; $T0_31 = n$1937initial:void; $irvar1 = n$1938initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1939initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$3432 = n$8] |- n$8|->{childrenLock:_t$3431rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$3430rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$3431|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$3430|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply val$2 _t$3430 Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1936initial:org.junit.runners.model.Statement*; $T0_31 = n$1937initial:void; $irvar1 = n$1938initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1939initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ) [SUB: val$1 = n$8; _t$3430 = val$2; _t$3431 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$3432 = n$8 %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3 = null MISSING FLD: n$8|->{childrenLock:_t$3431rearrange:531, filteredChildren:nullrearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); val$2|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$3 null Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1936initial:org.junit.runners.model.Statement*; $T0_31 = n$1937initial:void; $irvar1 = n$1938initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1939initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ) [SUB: val$1 = n$8; _t$3430 = val$2; _t$3431 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$3432 = n$8 val$3 = null; %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3 = null MISSING FLD: n$8|->{childrenLock:_t$3431rearrange:531, filteredChildren:nullrearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) [FRAME TYPING: val$2: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1936initial:org.junit.runners.model.Statement*; $T0_31 = n$1937initial:void; $irvar1 = n$1938initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1939initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ) [SUB: val$1 = n$8; _t$3430 = val$2; _t$3431 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$3432 = n$8 val$3 = null; %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$3431rearrange:531, filteredChildren:nullrearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub )] |- [FRAME TYPING: val$2: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Result of Abduction SUB: val$1 = n$8 (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1936initial:org.junit.runners.model.Statement*; $T0_31 = n$1937initial:void; $irvar1 = n$1938initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1939initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$3430 = val$2; _t$3431 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$3432 = n$8 val$3 = null; %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$3431rearrange:531, filteredChildren:nullrearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub )] |- this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$2|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:%path%n8_org.junit.runners.ParentRunner.childrenLock$-3rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:val$2rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: val$2: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE WARNING: Missing fields hpred has non-footprint vars: n$8|->{childrenLock:%path%n8_org.junit.runners.ParentRunner.childrenLock$-3rearrange:531, filteredChildren:nullrearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub ) Implication error: missing_sigma not empty in re-execution EXECUTING SPEC 2/5 ACTUAL PRECONDITION = val$1 = old_this ; (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1936initial:org.junit.runners.model.Statement*; $T0_31 = n$1937initial:void; $irvar1 = n$1938initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1939initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$3438 != null ; this|callee = _t$3439formal:org.junit.runners.ParentRunner*( sub ) ; _t$3437|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3438|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:_t$3438rearrange:(z)530, testClass:_t$3437rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$3438 != null; MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$3440); MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(return|callee); MEMna < Annotation[] ParentRunner.getRunnerAnnotations():395 > {vpath: }(_t$3441); RET < Annotation[] TestClass.getAnnotations() > (_t$3441); RET < List ParentRunner.getFilteredChildren() > (_t$3438); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$3441); RET < TestClass ParentRunner.getTestClass() > (_t$3437) ; return|callee = _t$3442update:403:org.junit.runner.Description* ; _t$3440|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$3441|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$3441update:395, fChildren:_t$3440update:(z)395, fDisplayName:"null"update:395, fTestClass:nullupdate:395, fUniqueId:"null"update:395}formal(z):org.junit.runner.Description; _t$3437|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$3438|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$3438formal(z), testClass:_t$3437formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$3438 != null; MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$3442); RET < TestClass ParentRunner.getTestClass() > (_t$3437) ; return|callee = EXN _t$3442update:395:org.junit.runner.Description* ; _t$3442|->{}alloc:java.lang.IllegalArgumentException; _t$3437|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$3438|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$3438formal(z), testClass:_t$3437formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268(val$5); RET < boolean List.isEmpty() > (0) pi2: _t$3438 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1936initial:org.junit.runners.model.Statement*; $T0_31 = n$1937initial:void; $irvar1 = n$1938initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1939initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$3439formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{filteredChildren:_t$3438rearrange:(z)530, testClass:_t$3437rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$3438|->{}rearrange:400:java.util.List( sub ); _t$3437|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply n$8 _t$3439 Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1936initial:org.junit.runners.model.Statement*; $T0_31 = n$1937initial:void; $irvar1 = n$1938initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1939initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$3439 = n$8] |- n$8|->{filteredChildren:_t$3438rearrange:(z)530, testClass:_t$3437rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$3438|->{}rearrange:400:java.util.List( sub ); _t$3437|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply val$2 _t$3437 Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1936initial:org.junit.runners.model.Statement*; $T0_31 = n$1937initial:void; $irvar1 = n$1938initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1939initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ) [SUB: val$1 = n$8; _t$3437 = val$2; _t$3438 = %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3; _t$3439 = n$8 MISSING FLD: n$8|->{filteredChildren:_t$3438rearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3|->{}rearrange:400:java.util.List( sub ); val$2|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$3 null Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1936initial:org.junit.runners.model.Statement*; $T0_31 = n$1937initial:void; $irvar1 = n$1938initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1939initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ) [SUB: val$1 = n$8; _t$3437 = val$2; _t$3438 = %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3; _t$3439 = n$8 val$3 = null MISSING FLD: n$8|->{filteredChildren:_t$3438rearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3|->{}rearrange:400:java.util.List( sub ) [FRAME TYPING: val$2: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1936initial:org.junit.runners.model.Statement*; $T0_31 = n$1937initial:void; $irvar1 = n$1938initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1939initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ) [SUB: val$1 = n$8; _t$3437 = val$2; _t$3438 = %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3; _t$3439 = n$8 val$3 = null* %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3|->{}rearrange:400:java.util.List( sub ) MISSING FLD: n$8|->{filteredChildren:_t$3438rearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub )] |- [FRAME TYPING: val$2: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Result of Abduction SUB: val$1 = n$8 (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1936initial:org.junit.runners.model.Statement*; $T0_31 = n$1937initial:void; $irvar1 = n$1938initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1939initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$3437 = val$2; _t$3438 = %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3; _t$3439 = n$8 val$3 = null* %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3|->{}rearrange:400:java.util.List( sub ) MISSING FLD: n$8|->{filteredChildren:_t$3438rearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3 != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$2|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:%path%n8_org.junit.runners.ParentRunner.filteredChildren$-3rearrange:(z)530, testClass:val$2rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: val$2: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE WARNING: Missing fields hpred has non-footprint vars: n$8|->{filteredChildren:%path%n8_org.junit.runners.ParentRunner.filteredChildren$-3rearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub ) Implication error: missing_sigma not empty in re-execution EXECUTING SPEC 3/5 ACTUAL PRECONDITION = val$1 = old_this ; (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1936initial:org.junit.runners.model.Statement*; $T0_31 = n$1937initial:void; $irvar1 = n$1938initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1939initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$3443 != null ; this|callee = _t$3445formal:org.junit.runners.ParentRunner*( sub ) ; _t$3443|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3444|->{clazz:_t$3443rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:_t$3444rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) POST 1 of 1: _t$3443 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$3446); RET < Class TestClass.getJavaClass() > (_t$3443); RET < TestClass ParentRunner.getTestClass() > (_t$3444) ; return|callee = EXN _t$3446update:397:org.junit.runner.Description* ; _t$3446|->{}alloc:java.lang.IllegalArgumentException; _t$3443|->{name:""formal(z)}formal(z):java.lang.Class( sub ); _t$3444|->{clazz:_t$3443formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:_t$3444formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268(val$5); RET < boolean List.isEmpty() > (0) pi2: _t$3443 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1936initial:org.junit.runners.model.Statement*; $T0_31 = n$1937initial:void; $irvar1 = n$1938initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1939initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$3445formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{testClass:_t$3444rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$3444|->{clazz:_t$3443rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3443|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1936initial:org.junit.runners.model.Statement*; $T0_31 = n$1937initial:void; $irvar1 = n$1938initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1939initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$3445formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{testClass:_t$3444rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$3444|->{clazz:_t$3443rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3443|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: ""|->{count:_t$3464none, hash:_t$3465none, offset:_t$3466none, value:_t$3467none}none:java.lang.String] [FRAME TYPING: "": java.lang.String ] do_imply n$8 _t$3445 Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1936initial:org.junit.runners.model.Statement*; $T0_31 = n$1937initial:void; $irvar1 = n$1938initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1939initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$3445 = n$8] |- n$8|->{testClass:_t$3444rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$3444|->{clazz:_t$3443rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3443|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: ""|->{count:_t$3464none, hash:_t$3465none, offset:_t$3466none, value:_t$3467none}none:java.lang.String] [FRAME TYPING: "": java.lang.String ] do_imply val$2 _t$3444 Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1936initial:org.junit.runners.model.Statement*; $T0_31 = n$1937initial:void; $irvar1 = n$1938initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1939initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ) [SUB: val$1 = n$8; _t$3444 = val$2; _t$3445 = n$8] |- val$2|->{clazz:_t$3443rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3443|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: ""|->{count:_t$3464none, hash:_t$3465none, offset:_t$3466none, value:_t$3467none}none:java.lang.String] [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] do_imply val$3 _t$3443 Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1936initial:org.junit.runners.model.Statement*; $T0_31 = n$1937initial:void; $irvar1 = n$1938initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1939initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ) [SUB: val$1 = n$8; _t$3443 = val$3; _t$3444 = val$2; _t$3445 = n$8] |- val$3|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: ""|->{count:_t$3464none, hash:_t$3465none, offset:_t$3466none, value:_t$3467none}none:java.lang.String] [FRAME TYPING: val$2: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] do_imply "" "" Final Implication SUB: val$1 = n$8 (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1936initial:org.junit.runners.model.Statement*; $T0_31 = n$1937initial:void; $irvar1 = n$1938initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1939initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [SUB: val$1 = n$8; _t$3443 = val$3; _t$3444 = val$2; _t$3445 = n$8] |- [FRAME FLD: ""|->{count:_t$3464none, hash:_t$3465none, offset:_t$3466none, value:_t$3467none}none:java.lang.String] [FRAME TYPING: val$3: java.lang.Class( sub ) val$2: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] Result of Abduction SUB: val$1 = n$8 (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1936initial:org.junit.runners.model.Statement*; $T0_31 = n$1937initial:void; $irvar1 = n$1938initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1939initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$3443 = val$3; _t$3444 = val$2; _t$3445 = n$8] |- val$3 != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$3|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); val$2|->{clazz:val$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:val$2rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME FLD: ""|->{count:_t$3464none, hash:_t$3465none, offset:_t$3466none, value:_t$3467none}none:java.lang.String] [FRAME TYPING: val$3: java.lang.Class( sub ) val$2: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] returning TRUE in vpath_find exp:_t$3446 vpath_find: cannot find _t$3446 New footprint: Frame fld: ""|->{count:_t$3464none, hash:_t$3465none, offset:_t$3466none, value:_t$3467none}none:java.lang.String Frame typ: val$3: java.lang.Class( sub ) val$2: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String Missing fld: Instantiated frame: val$5|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); &classRules|->val$5update:268:java.util.List*; &$RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->val$5formal:java.util.List*( sub ); &$irvar0|->0nullify:void; &return|->n$1936initial:org.junit.runners.model.Statement*; &$T0_31|->n$1937initial:void; &$irvar1|->n$1938initial:void; &statement|->val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); &old_statement|->val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); &$irvar2|->n$1939initial:void; &this|->n$8formal:org.junit.runners.ParentRunner*( sub ); &old_this|->n$8formal:org.junit.runners.ParentRunner*( sub ) Instantiated post: PROP 1 of 1: val$3 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3446); RET < Class TestClass.getJavaClass() > (val$3); RET < TestClass ParentRunner.getTestClass() > (val$2) ; return|callee = EXN _t$3446update:270:org.junit.runner.Description* ; _t$3446|->{}alloc:java.lang.IllegalArgumentException; val$3|->{name:""formal(z)}formal(z):java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); n$8|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** RESULTS FUNCTION CALL ******* PROP 1 of 1: val$1 = old_this ; (val$6 <= -1); val$3 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Class TestClass.getJavaClass() > (val$3); RET < TestClass ParentRunner.getTestClass() > (val$2); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = n$1937initial:void; $irvar1 = n$1938initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1939initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal(z):java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** END RESULTS FUNCTION CALL ******* pvar: classRules found error in dereference spec_pre: val$1 = old_this ; (val$6 <= -1); val$3 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3446); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Class TestClass.getJavaClass() > (val$3); RET < TestClass ParentRunner.getTestClass() > (val$2); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$3446update:270:org.junit.runners.model.Statement*; $T0_31 = n$1937initial:void; $irvar1 = n$1938initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1939initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$3446|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal(z):java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) exp val$5 desc: Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] EXECUTING SPEC 4/5 ACTUAL PRECONDITION = val$1 = old_this ; (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1936initial:org.junit.runners.model.Statement*; $T0_31 = n$1937initial:void; $irvar1 = n$1938initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1939initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$3447 != null; _t$3447 != ""; _t$3448 != null ; this|callee = _t$3451formal:org.junit.runners.ParentRunner*( sub ) ; _t$3447|->{}rearrange:(z)394:java.lang.String( sub ); _t$3448|->{name:_t$3447rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3449|->{clazz:_t$3448rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3450|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$3450rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$3449rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$3447 != null; _t$3447 != ""; _t$3448 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$3452); MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(return|callee); UND < Annotation[] Class.getAnnotations() > :216(_t$3454); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$3455); LOCKED(_t$3450); RET < Annotation[] TestClass.getAnnotations() > (_t$3454); RET < List ParentRunner.getFilteredChildren() > (_t$3455); RET < Class TestClass.getJavaClass() > (_t$3448); RET < String Class.getName() > (_t$3447); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$3454); RET < TestClass ParentRunner.getTestClass() > (_t$3449) ; return|callee = _t$3453update:403:org.junit.runner.Description* ; _t$3452|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; return|callee|->{fAnnotations:_t$3454update:397, fChildren:_t$3452update:(z)397, fDisplayName:_t$3447update:397, fTestClass:_t$3448update:397, fUniqueId:_t$3447update:397}formal(z):org.junit.runner.Description; _t$3447|->{}formal:java.lang.String( sub ); _t$3448|->{name:_t$3447formal(z)}formal(z):java.lang.Class( sub ); _t$3449|->{clazz:_t$3448formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$3450|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$3450formal, filteredChildren:_t$3455update:(z)400, testClass:_t$3449formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$3447 != null; _t$3447 != ""; _t$3448 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$3455); RET < Class TestClass.getJavaClass() > (_t$3448); RET < String Class.getName() > (_t$3447); RET < TestClass ParentRunner.getTestClass() > (_t$3449) ; return|callee = EXN _t$3455update:397:org.junit.runner.Description* ; _t$3455|->{}alloc:java.lang.IllegalArgumentException; _t$3447|->{}formal:java.lang.String( sub ); _t$3448|->{name:_t$3447formal(z)}formal(z):java.lang.Class( sub ); _t$3449|->{clazz:_t$3448formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$3450|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$3450formal, filteredChildren:nullformal(z), testClass:_t$3449formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268(val$5); RET < boolean List.isEmpty() > (0) pi2: _t$3447 != null; _t$3447 != ""; _t$3448 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1936initial:org.junit.runners.model.Statement*; $T0_31 = n$1937initial:void; $irvar1 = n$1938initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1939initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$3451formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{childrenLock:_t$3450rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$3449rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$3450|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$3449|->{clazz:_t$3448rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3448|->{name:_t$3447rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3447|->{}rearrange:(z)394:java.lang.String( sub ) do_imply n$8 _t$3451 Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1936initial:org.junit.runners.model.Statement*; $T0_31 = n$1937initial:void; $irvar1 = n$1938initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1939initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$3451 = n$8] |- n$8|->{childrenLock:_t$3450rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$3449rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$3450|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$3449|->{clazz:_t$3448rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3448|->{name:_t$3447rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3447|->{}rearrange:(z)394:java.lang.String( sub ) do_imply val$2 _t$3449 Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1936initial:org.junit.runners.model.Statement*; $T0_31 = n$1937initial:void; $irvar1 = n$1938initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1939initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ) [SUB: val$1 = n$8; _t$3449 = val$2; _t$3450 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$3451 = n$8 %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3 = null MISSING FLD: n$8|->{childrenLock:_t$3450rearrange:531, filteredChildren:nullrearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); val$2|->{clazz:_t$3448rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3448|->{name:_t$3447rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3447|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$3 _t$3448 Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1936initial:org.junit.runners.model.Statement*; $T0_31 = n$1937initial:void; $irvar1 = n$1938initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1939initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ) [SUB: val$1 = n$8; _t$3448 = val$3; _t$3449 = val$2; _t$3450 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$3451 = n$8 %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3 = null MISSING FLD: n$8|->{childrenLock:_t$3450rearrange:531, filteredChildren:nullrearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); val$3|->{name:_t$3447rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3447|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$2: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1936initial:org.junit.runners.model.Statement*; $T0_31 = n$1937initial:void; $irvar1 = n$1938initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1939initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ) [SUB: val$1 = n$8; _t$3448 = val$3; _t$3449 = val$2; _t$3450 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$3451 = n$8 %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$3450rearrange:531, filteredChildren:nullrearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub )] |- val$3|->{name:_t$3447rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3447|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$2: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] do_imply "" _t$3447 Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1936initial:org.junit.runners.model.Statement*; $T0_31 = n$1937initial:void; $irvar1 = n$1938initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1939initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [SUB: val$1 = n$8; _t$3447 = ""; _t$3448 = val$3; _t$3449 = val$2; _t$3450 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$3451 = n$8 %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$3450rearrange:531, filteredChildren:nullrearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub )] |- ""|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$3: java.lang.Class( sub ) val$2: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1936initial:org.junit.runners.model.Statement*; $T0_31 = n$1937initial:void; $irvar1 = n$1938initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1939initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [SUB: val$1 = n$8; _t$3447 = ""; _t$3448 = val$3; _t$3449 = val$2; _t$3450 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$3451 = n$8 %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$3450rearrange:531, filteredChildren:nullrearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub )] |- [FRAME FLD: ""|->{count:_t$3468none, hash:_t$3469none, offset:_t$3470none, value:_t$3471none}none:java.lang.String] [FRAME TYPING: "": java.lang.String val$3: java.lang.Class( sub ) val$2: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] imply_pi: adding missing atom _t$3447 != null imply_pi: adding missing atom _t$3447 != "" Result of Abduction SUB: val$1 = n$8 (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1936initial:org.junit.runners.model.Statement*; $T0_31 = n$1937initial:void; $irvar1 = n$1938initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1939initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$3447 = ""; _t$3448 = val$3; _t$3449 = val$2; _t$3450 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$3451 = n$8 _t$3447 != ""; _t$3447 != null; %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$3450rearrange:531, filteredChildren:nullrearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub )] |- "" != null; "" != ""; val$3 != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; ""|->{}rearrange:(z)394:java.lang.String( sub ); val$3|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); val$2|->{clazz:val$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:%path%n8_org.junit.runners.ParentRunner.childrenLock$-3rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:val$2rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME FLD: ""|->{count:_t$3468none, hash:_t$3469none, offset:_t$3470none, value:_t$3471none}none:java.lang.String] [FRAME TYPING: "": java.lang.String val$3: java.lang.Class( sub ) val$2: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE WARNING: Missing fields hpred has non-footprint vars: n$8|->{childrenLock:%path%n8_org.junit.runners.ParentRunner.childrenLock$-3rearrange:531, filteredChildren:nullrearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub ) Implication error: missing_sigma not empty in re-execution EXECUTING SPEC 5/5 ACTUAL PRECONDITION = val$1 = old_this ; (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1936initial:org.junit.runners.model.Statement*; $T0_31 = n$1937initial:void; $irvar1 = n$1938initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1939initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$3456 != null; _t$3456 != ""; _t$3457 != null; _t$3459 != null ; this|callee = _t$3460formal:org.junit.runners.ParentRunner*( sub ) ; _t$3456|->{}rearrange:(z)394:java.lang.String( sub ); _t$3457|->{name:_t$3456rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3458|->{clazz:_t$3457rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3459|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:_t$3459rearrange:(z)530, testClass:_t$3458rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$3456 != null; _t$3456 != ""; _t$3457 != null; _t$3459 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$3461); MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(return|callee); UND < Annotation[] Class.getAnnotations() > :216(_t$3463); RET < Annotation[] TestClass.getAnnotations() > (_t$3463); RET < List ParentRunner.getFilteredChildren() > (_t$3459); RET < Class TestClass.getJavaClass() > (_t$3457); RET < String Class.getName() > (_t$3456); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$3463); RET < TestClass ParentRunner.getTestClass() > (_t$3458) ; return|callee = _t$3462update:403:org.junit.runner.Description* ; _t$3461|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; return|callee|->{fAnnotations:_t$3463update:397, fChildren:_t$3461update:(z)397, fDisplayName:_t$3456update:397, fTestClass:_t$3457update:397, fUniqueId:_t$3456update:397}formal(z):org.junit.runner.Description; _t$3456|->{}formal:java.lang.String( sub ); _t$3457|->{name:_t$3456formal(z)}formal(z):java.lang.Class( sub ); _t$3458|->{clazz:_t$3457formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$3459|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$3459formal(z), testClass:_t$3458formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$3456 != null; _t$3456 != ""; _t$3457 != null; _t$3459 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$3462); RET < Class TestClass.getJavaClass() > (_t$3457); RET < String Class.getName() > (_t$3456); RET < TestClass ParentRunner.getTestClass() > (_t$3458) ; return|callee = EXN _t$3462update:397:org.junit.runner.Description* ; _t$3462|->{}alloc:java.lang.IllegalArgumentException; _t$3456|->{}formal:java.lang.String( sub ); _t$3457|->{name:_t$3456formal(z)}formal(z):java.lang.Class( sub ); _t$3458|->{clazz:_t$3457formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$3459|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$3459formal(z), testClass:_t$3458formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268(val$5); RET < boolean List.isEmpty() > (0) pi2: _t$3456 != null; _t$3456 != ""; _t$3457 != null; _t$3459 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1936initial:org.junit.runners.model.Statement*; $T0_31 = n$1937initial:void; $irvar1 = n$1938initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1939initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$3460formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{filteredChildren:_t$3459rearrange:(z)530, testClass:_t$3458rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$3459|->{}rearrange:400:java.util.List( sub ); _t$3458|->{clazz:_t$3457rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3457|->{name:_t$3456rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3456|->{}rearrange:(z)394:java.lang.String( sub ) do_imply n$8 _t$3460 Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1936initial:org.junit.runners.model.Statement*; $T0_31 = n$1937initial:void; $irvar1 = n$1938initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1939initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$3460 = n$8] |- n$8|->{filteredChildren:_t$3459rearrange:(z)530, testClass:_t$3458rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$3459|->{}rearrange:400:java.util.List( sub ); _t$3458|->{clazz:_t$3457rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3457|->{name:_t$3456rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3456|->{}rearrange:(z)394:java.lang.String( sub ) do_imply val$2 _t$3458 Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1936initial:org.junit.runners.model.Statement*; $T0_31 = n$1937initial:void; $irvar1 = n$1938initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1939initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ) [SUB: val$1 = n$8; _t$3458 = val$2; _t$3459 = %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3; _t$3460 = n$8 MISSING FLD: n$8|->{filteredChildren:_t$3459rearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3|->{}rearrange:400:java.util.List( sub ); val$2|->{clazz:_t$3457rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3457|->{name:_t$3456rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3456|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply val$3 _t$3457 Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1936initial:org.junit.runners.model.Statement*; $T0_31 = n$1937initial:void; $irvar1 = n$1938initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1939initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ) [SUB: val$1 = n$8; _t$3457 = val$3; _t$3458 = val$2; _t$3459 = %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3; _t$3460 = n$8 MISSING FLD: n$8|->{filteredChildren:_t$3459rearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3|->{}rearrange:400:java.util.List( sub ); val$3|->{name:_t$3456rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3456|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$2: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1936initial:org.junit.runners.model.Statement*; $T0_31 = n$1937initial:void; $irvar1 = n$1938initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1939initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ) [SUB: val$1 = n$8; _t$3457 = val$3; _t$3458 = val$2; _t$3459 = %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3; _t$3460 = n$8 %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3|->{}rearrange:400:java.util.List( sub ) MISSING FLD: n$8|->{filteredChildren:_t$3459rearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub )] |- val$3|->{name:_t$3456rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3456|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$2: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] do_imply "" _t$3456 Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1936initial:org.junit.runners.model.Statement*; $T0_31 = n$1937initial:void; $irvar1 = n$1938initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1939initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [SUB: val$1 = n$8; _t$3456 = ""; _t$3457 = val$3; _t$3458 = val$2; _t$3459 = %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3; _t$3460 = n$8 %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3|->{}rearrange:400:java.util.List( sub ) MISSING FLD: n$8|->{filteredChildren:_t$3459rearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub )] |- ""|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$3: java.lang.Class( sub ) val$2: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1936initial:org.junit.runners.model.Statement*; $T0_31 = n$1937initial:void; $irvar1 = n$1938initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1939initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ) [SUB: val$1 = n$8; _t$3456 = ""; _t$3457 = val$3; _t$3458 = val$2; _t$3459 = %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3; _t$3460 = n$8 %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3|->{}rearrange:400:java.util.List( sub ) MISSING FLD: n$8|->{filteredChildren:_t$3459rearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub )] |- [FRAME FLD: ""|->{count:_t$3472none, hash:_t$3473none, offset:_t$3474none, value:_t$3475none}none:java.lang.String] [FRAME TYPING: "": java.lang.String val$3: java.lang.Class( sub ) val$2: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] imply_pi: adding missing atom _t$3456 != null imply_pi: adding missing atom _t$3456 != "" Result of Abduction SUB: val$1 = n$8 (val$6 <= -1); val$3 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$1936initial:org.junit.runners.model.Statement*; $T0_31 = n$1937initial:void; $irvar1 = n$1938initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$1939initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal:java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$3456 = ""; _t$3457 = val$3; _t$3458 = val$2; _t$3459 = %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3; _t$3460 = n$8 _t$3456 != ""; _t$3456 != null* %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3|->{}rearrange:400:java.util.List( sub ) MISSING FLD: n$8|->{filteredChildren:_t$3459rearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub )] |- "" != null; "" != ""; val$3 != null; %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3 != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; ""|->{}rearrange:(z)394:java.lang.String( sub ); val$3|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); val$2|->{clazz:val$3rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); %path%n8_org.junit.runners.ParentRunner.filteredChildren$-3|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:%path%n8_org.junit.runners.ParentRunner.filteredChildren$-3rearrange:(z)530, testClass:val$2rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME FLD: ""|->{count:_t$3472none, hash:_t$3473none, offset:_t$3474none, value:_t$3475none}none:java.lang.String] [FRAME TYPING: "": java.lang.String val$3: java.lang.Class( sub ) val$2: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE WARNING: Missing fields hpred has non-footprint vars: n$8|->{filteredChildren:%path%n8_org.junit.runners.ParentRunner.filteredChildren$-3rearrange:(z)530}formal(z):org.junit.runners.ParentRunner( sub ) Implication error: missing_sigma not empty in re-execution Instruction Returns PROP 1 of 1: val$1 = old_this ; (val$6 <= -1); val$3 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (n$10); RET < Class TestClass.getJavaClass() > (val$3); RET < TestClass ParentRunner.getTestClass() > (val$2); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal(z):java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Skipping instr *&$irvar1:org.junit.runner.Description*=n$10 [line 270] due to exception Instruction NULLIFY(&this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: val$1 = old_this ; (val$6 <= -1); val$3 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (n$10); RET < Class TestClass.getJavaClass() > (val$3); RET < TestClass ParentRunner.getTestClass() > (val$2); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal(z):java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction EXIT_SCOPE(_,n$8,n$10,this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: (val$6 <= -1); val$3 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (_t$4); RET < Class TestClass.getJavaClass() > (val$3); RET < TestClass ParentRunner.getTestClass() > (val$2); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal(z):java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) .... After Symbolic Execution .... PROP 1 of 1: (val$6 <= -1); val$3 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (_t$4); RET < Class TestClass.getJavaClass() > (val$3); RET < TestClass ParentRunner.getTestClass() > (val$2); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{name:""formal(z)}formal(z):java.lang.Class( sub ); val$2|->{clazz:val$3formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); old_this|->{testClass:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub )
node10#session210(270) biabduction **** [RE:Pending] Statement ParentRunner.withClassRules(RunBefores) Node: 10, Procedure: Statement ParentRunner.withClassRules(RunBefores), Todo: 1 **** PROP 1 of 1: (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = val$1formal:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) .... Instructions: .... n$8=*&this:org.junit.runners.ParentRunner* [line 270]; _=*n$8:org.junit.runners.ParentRunner [line 270]; n$10=_fun_Description ParentRunner.getDescription()(n$8:org.junit.runners.ParentRunner*) virtual [line 270]; *&$irvar1:org.junit.runner.Description*=n$10 [line 270]; NULLIFY(&this); [line 270]; EXIT_SCOPE(_,n$8,n$10,this); [line 270]; Processing prop 1/1 Instruction n$8=*&this:org.junit.runners.ParentRunner* [line 270] .... Rearrangement Start .... Exp: &this Prop: (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2022initial:org.junit.runners.model.Statement*; $T0_31 = n$2023initial:void; $irvar1 = n$2024initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2025initial:void; this = val$1formal:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 1: val$1 = old_this ; (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction _=*n$8:org.junit.runners.ParentRunner [line 270] .... Rearrangement Start .... Exp: n$8 Prop: val$1 = old_this ; (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2026initial:org.junit.runners.model.Statement*; $T0_31 = n$2027initial:void; $irvar1 = n$2028initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2029initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 1: val$1 = old_this ; (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction n$10=_fun_Description ParentRunner.getDescription()(n$8:org.junit.runners.ParentRunner*) virtual [line 270] Found 5 specs for function org.junit.runners.ParentRunner.getDescription():org.junit.runner.Description START EXECUTING SPECS FOR org.junit.runners.ParentRunner.getDescription():org.junit.runner.Description from state val$1 = old_this ; (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2030initial:org.junit.runners.model.Statement*; $T0_31 = n$2031initial:void; $irvar1 = n$2032initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2033initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) EXECUTING SPEC 1/5 ACTUAL PRECONDITION = val$1 = old_this ; (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2030initial:org.junit.runners.model.Statement*; $T0_31 = n$2031initial:void; $irvar1 = n$2032initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2033initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: this|callee = _t$3620formal:org.junit.runners.ParentRunner*( sub ) ; _t$3618|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3619|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$3619rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$3618rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$3621); MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(return|callee); MEMna < Annotation[] ParentRunner.getRunnerAnnotations():395 > {vpath: }(_t$3622); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$3624); LOCKED(_t$3619); RET < Annotation[] TestClass.getAnnotations() > (_t$3622); RET < List ParentRunner.getFilteredChildren() > (_t$3624); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$3622); RET < TestClass ParentRunner.getTestClass() > (_t$3618) ; return|callee = _t$3623update:403:org.junit.runner.Description* ; _t$3621|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$3622|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$3622update:395, fChildren:_t$3621update:(z)395, fDisplayName:"null"update:395, fTestClass:nullupdate:395, fUniqueId:"null"update:395}formal(z):org.junit.runner.Description; _t$3618|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$3619|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$3619formal, filteredChildren:_t$3624update:(z)400, testClass:_t$3618formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$3624); RET < TestClass ParentRunner.getTestClass() > (_t$3618) ; return|callee = EXN _t$3624update:395:org.junit.runner.Description* ; _t$3624|->{}alloc:java.lang.IllegalArgumentException; _t$3618|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$3619|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$3619formal, filteredChildren:nullformal(z), testClass:_t$3618formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268(val$5); RET < boolean List.isEmpty() > (0) pi2: returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2030initial:org.junit.runners.model.Statement*; $T0_31 = n$2031initial:void; $irvar1 = n$2032initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2033initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$3620formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{childrenLock:_t$3619rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$3618rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$3619|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$3618|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply n$8 _t$3620 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2030initial:org.junit.runners.model.Statement*; $T0_31 = n$2031initial:void; $irvar1 = n$2032initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2033initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$3620 = n$8] |- n$8|->{childrenLock:_t$3619rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$3618rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$3619|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$3618|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply val$2 null do_imply val$3 _t$3618 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2030initial:org.junit.runners.model.Statement*; $T0_31 = n$2031initial:void; $irvar1 = n$2032initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2033initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$3618 = val$3; _t$3619 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$3620 = n$8 val$2 = null MISSING FLD: n$8|->{childrenLock:_t$3619rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply null null Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2030initial:org.junit.runners.model.Statement*; $T0_31 = n$2031initial:void; $irvar1 = n$2032initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2033initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$3618 = val$3; _t$3619 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$3620 = n$8 val$2 = null MISSING FLD: n$8|->{childrenLock:_t$3619rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2030initial:org.junit.runners.model.Statement*; $T0_31 = n$2031initial:void; $irvar1 = n$2032initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2033initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$3618 = val$3; _t$3619 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$3620 = n$8 val$2 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$3619rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Result of Abduction SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2030initial:org.junit.runners.model.Statement*; $T0_31 = n$2031initial:void; $irvar1 = n$2032initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2033initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$3618 = val$3; _t$3619 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$3620 = n$8 val$2 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$3619rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:%path%n8_org.junit.runners.ParentRunner.childrenLock$-3rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE WARNING: Missing fields hpred has non-footprint vars: n$8|->{childrenLock:%path%n8_org.junit.runners.ParentRunner.childrenLock$-3rearrange:531}formal(z):org.junit.runners.ParentRunner( sub ) Implication error: missing_sigma not empty in re-execution EXECUTING SPEC 2/5 ACTUAL PRECONDITION = val$1 = old_this ; (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2030initial:org.junit.runners.model.Statement*; $T0_31 = n$2031initial:void; $irvar1 = n$2032initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2033initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$3626 != null ; this|callee = _t$3627formal:org.junit.runners.ParentRunner*( sub ) ; _t$3625|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3626|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:_t$3626rearrange:(z)530, testClass:_t$3625rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$3626 != null; MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$3628); MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(return|callee); MEMna < Annotation[] ParentRunner.getRunnerAnnotations():395 > {vpath: }(_t$3629); RET < Annotation[] TestClass.getAnnotations() > (_t$3629); RET < List ParentRunner.getFilteredChildren() > (_t$3626); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$3629); RET < TestClass ParentRunner.getTestClass() > (_t$3625) ; return|callee = _t$3630update:403:org.junit.runner.Description* ; _t$3628|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$3629|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$3629update:395, fChildren:_t$3628update:(z)395, fDisplayName:"null"update:395, fTestClass:nullupdate:395, fUniqueId:"null"update:395}formal(z):org.junit.runner.Description; _t$3625|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$3626|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$3626formal(z), testClass:_t$3625formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$3626 != null; MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$3630); RET < TestClass ParentRunner.getTestClass() > (_t$3625) ; return|callee = EXN _t$3630update:395:org.junit.runner.Description* ; _t$3630|->{}alloc:java.lang.IllegalArgumentException; _t$3625|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$3626|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$3626formal(z), testClass:_t$3625formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268(val$5); RET < boolean List.isEmpty() > (0) pi2: _t$3626 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2030initial:org.junit.runners.model.Statement*; $T0_31 = n$2031initial:void; $irvar1 = n$2032initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2033initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$3627formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{filteredChildren:_t$3626rearrange:(z)530, testClass:_t$3625rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$3626|->{}rearrange:400:java.util.List( sub ); _t$3625|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply n$8 _t$3627 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2030initial:org.junit.runners.model.Statement*; $T0_31 = n$2031initial:void; $irvar1 = n$2032initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2033initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$3627 = n$8] |- n$8|->{filteredChildren:_t$3626rearrange:(z)530, testClass:_t$3625rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$3626|->{}rearrange:400:java.util.List( sub ); _t$3625|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply val$2 _t$3626 do_imply val$3 _t$3625 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2030initial:org.junit.runners.model.Statement*; $T0_31 = n$2031initial:void; $irvar1 = n$2032initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2033initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$3625 = val$3; _t$3626 = val$2; _t$3627 = n$8] |- val$2|->{}rearrange:400:java.util.List( sub ); val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply null null Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2030initial:org.junit.runners.model.Statement*; $T0_31 = n$2031initial:void; $irvar1 = n$2032initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2033initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$3625 = val$3; _t$3626 = val$2; _t$3627 = n$8] |- val$2|->{}rearrange:400:java.util.List( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2030initial:org.junit.runners.model.Statement*; $T0_31 = n$2031initial:void; $irvar1 = n$2032initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2033initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ) [SUB: val$1 = n$8; _t$3625 = val$3; _t$3626 = val$2; _t$3627 = n$8] |- [FRAME TYPING: val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Result of Abduction SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2030initial:org.junit.runners.model.Statement*; $T0_31 = n$2031initial:void; $irvar1 = n$2032initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2033initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$3625 = val$3; _t$3626 = val$2; _t$3627 = n$8] |- val$2 != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); val$2|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:val$2rearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE in vpath_find exp:_t$3628 vpath_find: cannot find _t$3628 in vpath_find exp:_t$3630 vpath_find: cannot find _t$3630 in vpath_find exp:_t$3629 vpath_find: cannot find _t$3629 in vpath_find exp:_t$3630 vpath_find: cannot find _t$3630 New footprint: Frame fld: Frame typ: val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) Missing fld: Instantiated frame: val$5|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); &classRules|->val$5update:268:java.util.List*; &$RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->val$5formal:java.util.List*( sub ); &$irvar0|->0nullify:void; &return|->n$2030initial:org.junit.runners.model.Statement*; &$T0_31|->n$2031initial:void; &$irvar1|->n$2032initial:void; &statement|->val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); &old_statement|->val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); &$irvar2|->n$2033initial:void; &this|->n$8formal:org.junit.runners.ParentRunner*( sub ); &old_this|->n$8formal:org.junit.runners.ParentRunner*( sub ) Instantiated post: PROP 1 of 2: val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3628); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(return|callee); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$3629); RET < Annotation[] TestClass.getAnnotations() > (_t$3629); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$3629); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = _t$3630update:270:org.junit.runner.Description* ; _t$3628|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$3629|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$3629update:270, fChildren:_t$3628update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$8|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3630); RET < TestClass ParentRunner.getTestClass() > (val$3) ; return|callee = EXN _t$3630update:270:org.junit.runner.Description* ; _t$3630|->{}alloc:java.lang.IllegalArgumentException; val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$8|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** RESULTS FUNCTION CALL ******* PROP 1 of 2: val$1 = old_this ; (-1 < val$6); val$6 != 1; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$1); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$0); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2030initial:org.junit.runners.model.Statement*; $T0_31 = n$2031initial:void; $irvar1 = n$2032initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2033initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$1|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$0|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$10|->{fAnnotations:_t$0update:270, fChildren:_t$1update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: val$1 = old_this ; (-1 < val$6); val$6 != 1; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = n$2031initial:void; $irvar1 = n$2032initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2033initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ***** END RESULTS FUNCTION CALL ******* pvar: classRules found error in dereference spec_pre: val$1 = old_this ; (-1 < val$6); val$6 != 1; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3628); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$3629); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$3629); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2030initial:org.junit.runners.model.Statement*; $T0_31 = n$2031initial:void; $irvar1 = n$2032initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2033initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$3629|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; _t$3628|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$10|->{fAnnotations:_t$3629update:270, fChildren:_t$3628update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) exp val$5 desc: pvar: classRules found error in dereference spec_pre: val$1 = old_this ; (-1 < val$6); val$6 != 1; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3630); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$3630update:270:org.junit.runners.model.Statement*; $T0_31 = n$2031initial:void; $irvar1 = n$2032initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2033initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$3630|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) exp val$5 desc: Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] EXECUTING SPEC 3/5 ACTUAL PRECONDITION = val$1 = old_this ; (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2030initial:org.junit.runners.model.Statement*; $T0_31 = n$2031initial:void; $irvar1 = n$2032initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2033initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$3631 != null ; this|callee = _t$3633formal:org.junit.runners.ParentRunner*( sub ) ; _t$3631|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3632|->{clazz:_t$3631rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:_t$3632rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) POST 1 of 1: _t$3631 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$3634); RET < Class TestClass.getJavaClass() > (_t$3631); RET < TestClass ParentRunner.getTestClass() > (_t$3632) ; return|callee = EXN _t$3634update:397:org.junit.runner.Description* ; _t$3634|->{}alloc:java.lang.IllegalArgumentException; _t$3631|->{name:""formal(z)}formal(z):java.lang.Class( sub ); _t$3632|->{clazz:_t$3631formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:_t$3632formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268(val$5); RET < boolean List.isEmpty() > (0) pi2: _t$3631 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2030initial:org.junit.runners.model.Statement*; $T0_31 = n$2031initial:void; $irvar1 = n$2032initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2033initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$3633formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{testClass:_t$3632rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$3632|->{clazz:_t$3631rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3631|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2030initial:org.junit.runners.model.Statement*; $T0_31 = n$2031initial:void; $irvar1 = n$2032initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2033initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$3633formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{testClass:_t$3632rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$3632|->{clazz:_t$3631rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3631|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: ""|->{count:_t$3652none, hash:_t$3653none, offset:_t$3654none, value:_t$3655none}none:java.lang.String] [FRAME TYPING: "": java.lang.String ] do_imply n$8 _t$3633 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2030initial:org.junit.runners.model.Statement*; $T0_31 = n$2031initial:void; $irvar1 = n$2032initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2033initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$3633 = n$8] |- n$8|->{testClass:_t$3632rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); _t$3632|->{clazz:_t$3631rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3631|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: ""|->{count:_t$3652none, hash:_t$3653none, offset:_t$3654none, value:_t$3655none}none:java.lang.String] [FRAME TYPING: "": java.lang.String ] do_imply val$3 _t$3632 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2030initial:org.junit.runners.model.Statement*; $T0_31 = n$2031initial:void; $irvar1 = n$2032initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2033initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$3632 = val$3; _t$3633 = n$8] |- val$3|->{clazz:_t$3631rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3631|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: n$8|->{filteredChildren:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$3652none, hash:_t$3653none, offset:_t$3654none, value:_t$3655none}none:java.lang.String] [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] do_imply null _t$3631 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2030initial:org.junit.runners.model.Statement*; $T0_31 = n$2031initial:void; $irvar1 = n$2032initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2033initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$3631 = null; _t$3632 = val$3; _t$3633 = n$8] |- null|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ) [FRAME FLD: n$8|->{filteredChildren:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$3652none, hash:_t$3653none, offset:_t$3654none, value:_t$3655none}none:java.lang.String] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] Final Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2030initial:org.junit.runners.model.Statement*; $T0_31 = n$2031initial:void; $irvar1 = n$2032initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2033initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$3631 = null; _t$3632 = val$3; _t$3633 = n$8 @f$13 = ""* null|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub )] |- [FRAME FLD: n$8|->{filteredChildren:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$3652none, hash:_t$3653none, offset:_t$3654none, value:_t$3655none}none:java.lang.String] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] imply_pi: adding missing atom _t$3631 != null Result of Abduction SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2030initial:org.junit.runners.model.Statement*; $T0_31 = n$2031initial:void; $irvar1 = n$2032initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2033initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$3631 = null; _t$3632 = val$3; _t$3633 = n$8 _t$3631 != null; @f$13 = ""* null|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub )] |- null != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; null|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:val$3rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME FLD: n$8|->{filteredChildren:val$2formal(z)}formal(z):org.junit.runners.ParentRunner( sub ); ""|->{count:_t$3652none, hash:_t$3653none, offset:_t$3654none, value:_t$3655none}none:java.lang.String] [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) "": java.lang.String ] returning TRUE explain_dereference_as_caller_expression _t$3631: cannot explain None found error in dereference spec_pre: _t$3631 != null ; this|callee = _t$3633formal:org.junit.runners.ParentRunner*( sub ) ; _t$3631|->{name:""rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3632|->{clazz:_t$3631rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); this|callee|->{testClass:_t$3632rearrange:(z)355}rearrange:(z)390:org.junit.runners.ParentRunner( sub ); ""|->{}rearrange:(z)394:java.lang.String( sub ) exp _t$3631 desc: EXECUTING SPEC 4/5 ACTUAL PRECONDITION = val$1 = old_this ; (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2030initial:org.junit.runners.model.Statement*; $T0_31 = n$2031initial:void; $irvar1 = n$2032initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2033initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$3635 != null; _t$3635 != ""; _t$3636 != null ; this|callee = _t$3639formal:org.junit.runners.ParentRunner*( sub ) ; _t$3635|->{}rearrange:(z)394:java.lang.String( sub ); _t$3636|->{name:_t$3635rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3637|->{clazz:_t$3636rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3638|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$3638rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$3637rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$3635 != null; _t$3635 != ""; _t$3636 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$3640); MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(return|callee); UND < Annotation[] Class.getAnnotations() > :216(_t$3642); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$3643); LOCKED(_t$3638); RET < Annotation[] TestClass.getAnnotations() > (_t$3642); RET < List ParentRunner.getFilteredChildren() > (_t$3643); RET < Class TestClass.getJavaClass() > (_t$3636); RET < String Class.getName() > (_t$3635); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$3642); RET < TestClass ParentRunner.getTestClass() > (_t$3637) ; return|callee = _t$3641update:403:org.junit.runner.Description* ; _t$3640|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; return|callee|->{fAnnotations:_t$3642update:397, fChildren:_t$3640update:(z)397, fDisplayName:_t$3635update:397, fTestClass:_t$3636update:397, fUniqueId:_t$3635update:397}formal(z):org.junit.runner.Description; _t$3635|->{}formal:java.lang.String( sub ); _t$3636|->{name:_t$3635formal(z)}formal(z):java.lang.Class( sub ); _t$3637|->{clazz:_t$3636formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$3638|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$3638formal, filteredChildren:_t$3643update:(z)400, testClass:_t$3637formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$3635 != null; _t$3635 != ""; _t$3636 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$3643); RET < Class TestClass.getJavaClass() > (_t$3636); RET < String Class.getName() > (_t$3635); RET < TestClass ParentRunner.getTestClass() > (_t$3637) ; return|callee = EXN _t$3643update:397:org.junit.runner.Description* ; _t$3643|->{}alloc:java.lang.IllegalArgumentException; _t$3635|->{}formal:java.lang.String( sub ); _t$3636|->{name:_t$3635formal(z)}formal(z):java.lang.Class( sub ); _t$3637|->{clazz:_t$3636formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$3638|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$3638formal, filteredChildren:nullformal(z), testClass:_t$3637formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268(val$5); RET < boolean List.isEmpty() > (0) pi2: _t$3635 != null; _t$3635 != ""; _t$3636 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2030initial:org.junit.runners.model.Statement*; $T0_31 = n$2031initial:void; $irvar1 = n$2032initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2033initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$3639formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{childrenLock:_t$3638rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$3637rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$3638|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$3637|->{clazz:_t$3636rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3636|->{name:_t$3635rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3635|->{}rearrange:(z)394:java.lang.String( sub ) do_imply n$8 _t$3639 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2030initial:org.junit.runners.model.Statement*; $T0_31 = n$2031initial:void; $irvar1 = n$2032initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2033initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$3639 = n$8] |- n$8|->{childrenLock:_t$3638rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$3637rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$3638|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$3637|->{clazz:_t$3636rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3636|->{name:_t$3635rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3635|->{}rearrange:(z)394:java.lang.String( sub ) do_imply val$2 null do_imply val$3 _t$3637 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2030initial:org.junit.runners.model.Statement*; $T0_31 = n$2031initial:void; $irvar1 = n$2032initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2033initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$3637 = val$3; _t$3638 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$3639 = n$8 val$2 = null MISSING FLD: n$8|->{childrenLock:_t$3638rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); val$3|->{clazz:_t$3636rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3636|->{name:_t$3635rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3635|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply null _t$3636 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2030initial:org.junit.runners.model.Statement*; $T0_31 = n$2031initial:void; $irvar1 = n$2032initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2033initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$3636 = null; _t$3637 = val$3; _t$3638 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$3639 = n$8 val$2 = null MISSING FLD: n$8|->{childrenLock:_t$3638rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); null|->{name:_t$3635rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3635|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2030initial:org.junit.runners.model.Statement*; $T0_31 = n$2031initial:void; $irvar1 = n$2032initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2033initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$3636 = null; _t$3637 = val$3; _t$3638 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$3639 = n$8 val$2 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$3638rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- null|->{name:_t$3635rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3635|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2030initial:org.junit.runners.model.Statement*; $T0_31 = n$2031initial:void; $irvar1 = n$2032initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2033initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$3635 = @f$14; _t$3636 = null; _t$3637 = val$3; _t$3638 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$3639 = n$8 val$2 = null* null|->{name:_t$3635rearrange:(z)15}rearrange:394:java.lang.Class( sub ); %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$3638rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- @f$14|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2030initial:org.junit.runners.model.Statement*; $T0_31 = n$2031initial:void; $irvar1 = n$2032initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2033initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$3635 = @f$14; _t$3636 = null; _t$3637 = val$3; _t$3638 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$3639 = n$8 val$2 = null* @f$14|->{}rearrange:(z)394:java.lang.String( sub ); null|->{name:_t$3635rearrange:(z)15}rearrange:394:java.lang.Class( sub ); %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$3638rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] imply_pi: adding missing atom _t$3635 != "" Result of Abduction SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2030initial:org.junit.runners.model.Statement*; $T0_31 = n$2031initial:void; $irvar1 = n$2032initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2033initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$3635 = @f$14; _t$3636 = null; _t$3637 = val$3; _t$3638 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$3639 = n$8 _t$3635 != ""; val$2 = null* @f$14|->{}rearrange:(z)394:java.lang.String( sub ); null|->{name:_t$3635rearrange:(z)15}rearrange:394:java.lang.Class( sub ); %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$3638rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- @f$14 != null; @f$14 != ""; null != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; @f$14|->{}rearrange:(z)394:java.lang.String( sub ); null|->{name:@f$14rearrange:(z)15}rearrange:394:java.lang.Class( sub ); val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:%path%n8_org.junit.runners.ParentRunner.childrenLock$-3rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE explain_dereference_as_caller_expression _t$3636: cannot explain None found error in dereference spec_pre: _t$3635 != null; _t$3635 != ""; _t$3636 != null ; this|callee = _t$3639formal:org.junit.runners.ParentRunner*( sub ) ; _t$3635|->{}rearrange:(z)394:java.lang.String( sub ); _t$3636|->{name:_t$3635rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3637|->{clazz:_t$3636rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3638|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$3638rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$3637rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) exp _t$3636 desc: EXECUTING SPEC 5/5 ACTUAL PRECONDITION = val$1 = old_this ; (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2030initial:org.junit.runners.model.Statement*; $T0_31 = n$2031initial:void; $irvar1 = n$2032initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2033initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$3644 != null; _t$3644 != ""; _t$3645 != null; _t$3647 != null ; this|callee = _t$3648formal:org.junit.runners.ParentRunner*( sub ) ; _t$3644|->{}rearrange:(z)394:java.lang.String( sub ); _t$3645|->{name:_t$3644rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3646|->{clazz:_t$3645rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3647|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:_t$3647rearrange:(z)530, testClass:_t$3646rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$3644 != null; _t$3644 != ""; _t$3645 != null; _t$3647 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$3649); MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(return|callee); UND < Annotation[] Class.getAnnotations() > :216(_t$3651); RET < Annotation[] TestClass.getAnnotations() > (_t$3651); RET < List ParentRunner.getFilteredChildren() > (_t$3647); RET < Class TestClass.getJavaClass() > (_t$3645); RET < String Class.getName() > (_t$3644); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$3651); RET < TestClass ParentRunner.getTestClass() > (_t$3646) ; return|callee = _t$3650update:403:org.junit.runner.Description* ; _t$3649|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; return|callee|->{fAnnotations:_t$3651update:397, fChildren:_t$3649update:(z)397, fDisplayName:_t$3644update:397, fTestClass:_t$3645update:397, fUniqueId:_t$3644update:397}formal(z):org.junit.runner.Description; _t$3644|->{}formal:java.lang.String( sub ); _t$3645|->{name:_t$3644formal(z)}formal(z):java.lang.Class( sub ); _t$3646|->{clazz:_t$3645formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$3647|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$3647formal(z), testClass:_t$3646formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$3644 != null; _t$3644 != ""; _t$3645 != null; _t$3647 != null; MEMne < Description Description.createSuiteDescription(Class,Annotation[]):397 > {vpath: }(_t$3650); RET < Class TestClass.getJavaClass() > (_t$3645); RET < String Class.getName() > (_t$3644); RET < TestClass ParentRunner.getTestClass() > (_t$3646) ; return|callee = EXN _t$3650update:397:org.junit.runner.Description* ; _t$3650|->{}alloc:java.lang.IllegalArgumentException; _t$3644|->{}formal:java.lang.String( sub ); _t$3645|->{name:_t$3644formal(z)}formal(z):java.lang.Class( sub ); _t$3646|->{clazz:_t$3645formal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$3647|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$3647formal(z), testClass:_t$3646formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268(val$5); RET < boolean List.isEmpty() > (0) pi2: _t$3644 != null; _t$3644 != ""; _t$3645 != null; _t$3647 != null returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2030initial:org.junit.runners.model.Statement*; $T0_31 = n$2031initial:void; $irvar1 = n$2032initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2033initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$3648formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{filteredChildren:_t$3647rearrange:(z)530, testClass:_t$3646rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$3647|->{}rearrange:400:java.util.List( sub ); _t$3646|->{clazz:_t$3645rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3645|->{name:_t$3644rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3644|->{}rearrange:(z)394:java.lang.String( sub ) do_imply n$8 _t$3648 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2030initial:org.junit.runners.model.Statement*; $T0_31 = n$2031initial:void; $irvar1 = n$2032initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2033initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$3648 = n$8] |- n$8|->{filteredChildren:_t$3647rearrange:(z)530, testClass:_t$3646rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$3647|->{}rearrange:400:java.util.List( sub ); _t$3646|->{clazz:_t$3645rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3645|->{name:_t$3644rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3644|->{}rearrange:(z)394:java.lang.String( sub ) do_imply val$2 _t$3647 do_imply val$3 _t$3646 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2030initial:org.junit.runners.model.Statement*; $T0_31 = n$2031initial:void; $irvar1 = n$2032initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2033initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$3646 = val$3; _t$3647 = val$2; _t$3648 = n$8] |- val$2|->{}rearrange:400:java.util.List( sub ); val$3|->{clazz:_t$3645rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3645|->{name:_t$3644rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3644|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply null _t$3645 Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2030initial:org.junit.runners.model.Statement*; $T0_31 = n$2031initial:void; $irvar1 = n$2032initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2033initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$3645 = null; _t$3646 = val$3; _t$3647 = val$2; _t$3648 = n$8] |- val$2|->{}rearrange:400:java.util.List( sub ); null|->{name:_t$3644rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3644|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2030initial:org.junit.runners.model.Statement*; $T0_31 = n$2031initial:void; $irvar1 = n$2032initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2033initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ) [SUB: val$1 = n$8; _t$3645 = null; _t$3646 = val$3; _t$3647 = val$2; _t$3648 = n$8] |- null|->{name:_t$3644rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3644|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Current Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2030initial:org.junit.runners.model.Statement*; $T0_31 = n$2031initial:void; $irvar1 = n$2032initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2033initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ) [SUB: val$1 = n$8; _t$3644 = @f$15; _t$3645 = null; _t$3646 = val$3; _t$3647 = val$2; _t$3648 = n$8 null|->{name:_t$3644rearrange:(z)15}rearrange:394:java.lang.Class( sub )] |- @f$15|->{}rearrange:(z)394:java.lang.String( sub ) [FRAME TYPING: val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2030initial:org.junit.runners.model.Statement*; $T0_31 = n$2031initial:void; $irvar1 = n$2032initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2033initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ) [SUB: val$1 = n$8; _t$3644 = @f$15; _t$3645 = null; _t$3646 = val$3; _t$3647 = val$2; _t$3648 = n$8 @f$15|->{}rearrange:(z)394:java.lang.String( sub ); null|->{name:_t$3644rearrange:(z)15}rearrange:394:java.lang.Class( sub )] |- [FRAME TYPING: val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] imply_pi: adding missing atom _t$3644 != "" imply_pi: adding missing atom _t$3645 != null Result of Abduction SUB: val$1 = n$8 (-1 < val$6); val$6 != 1; val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2030initial:org.junit.runners.model.Statement*; $T0_31 = n$2031initial:void; $irvar1 = n$2032initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2033initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$3644 = @f$15; _t$3645 = null; _t$3646 = val$3; _t$3647 = val$2; _t$3648 = n$8 _t$3645 != null; _t$3644 != ""* @f$15|->{}rearrange:(z)394:java.lang.String( sub ); null|->{name:_t$3644rearrange:(z)15}rearrange:394:java.lang.Class( sub )] |- @f$15 != null; @f$15 != ""; null != null; val$2 != null ; this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; @f$15|->{}rearrange:(z)394:java.lang.String( sub ); null|->{name:@f$15rearrange:(z)15}rearrange:394:java.lang.Class( sub ); val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); val$2|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:val$2rearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: val$2: java.util.List( sub ) val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE explain_dereference_as_caller_expression _t$3645: cannot explain None found error in dereference spec_pre: _t$3644 != null; _t$3644 != ""; _t$3645 != null; _t$3647 != null ; this|callee = _t$3648formal:org.junit.runners.ParentRunner*( sub ) ; _t$3644|->{}rearrange:(z)394:java.lang.String( sub ); _t$3645|->{name:_t$3644rearrange:(z)15}rearrange:394:java.lang.Class( sub ); _t$3646|->{clazz:_t$3645rearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3647|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:_t$3647rearrange:(z)530, testClass:_t$3646rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) exp _t$3645 desc: Instruction Returns PROP 1 of 2: val$1 = old_this ; (-1 < val$6); val$6 != 1; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$5); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$4); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$4); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$5|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$4|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$10|->{fAnnotations:_t$4update:270, fChildren:_t$5update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: val$1 = old_this ; (-1 < val$6); val$6 != 1; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (n$10); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction *&$irvar1:org.junit.runner.Description*=n$10 [line 270] in vpath_find exp:n$2034 vpath_find: cannot find n$2034 in vpath_find exp:n$10 vpath_find: cannot find n$10 in vpath_find exp:n$2035 vpath_find: cannot find n$2035 .... Rearrangement Start .... Exp: &$irvar1 Prop: val$1 = old_this ; (-1 < val$6); val$6 != 1; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$2034); MEMne < Description ParentRunner.getDescription():270 > {vpath: }(n$10); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(n$2035); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (n$10); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (n$2035); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2036initial:org.junit.runners.model.Statement*; $T0_31 = n$2037initial:void; $irvar1 = n$2038initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2039initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); n$2035|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; n$2034|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; n$10|->{fAnnotations:n$2035update:270, fChildren:n$2034update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 1: val$1 = old_this ; (-1 < val$6); val$6 != 1; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$4initial:org.junit.runners.model.Statement*; $T0_31 = _t$3initial:void; $irvar1 = n$10update:270:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$2|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$1|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); $irvar1|->{fAnnotations:_t$1update:270, fChildren:_t$2update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Skipping instr *&$irvar1:org.junit.runner.Description*=n$10 [line 270] due to exception Instruction NULLIFY(&this); [line 270] in vpath_find exp:_t$2 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$2 in vpath_find exp:n$10 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find n$10 in vpath_find exp:_t$1 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$1 Instruction Returns PROP 1 of 1: val$1 = old_this ; (-1 < val$6); val$6 != 1; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$1); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$1); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$4initial:org.junit.runners.model.Statement*; $T0_31 = _t$3initial:void; $irvar1 = n$10update:270:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$2|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$1|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); $irvar1|->{fAnnotations:_t$1update:270, fChildren:_t$2update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction NULLIFY(&this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: val$1 = old_this ; (-1 < val$6); val$6 != 1; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (n$10); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction EXIT_SCOPE(_,n$8,n$10,this); [line 270] in vpath_find exp:_t$2 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$2 in vpath_find exp:n$10 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find n$10 in vpath_find exp:_t$1 vpath_find do_sexp: no match on Eexp &$irvar1 vpath_find: cannot find _t$1 Instruction Returns PROP 1 of 1: (-1 < val$6); val$6 != 1; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$5initial:org.junit.runners.model.Statement*; $T0_31 = _t$4initial:void; $irvar1 = _t$1update:270:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$3|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$2|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $irvar1|->{fAnnotations:_t$2update:270, fChildren:_t$3update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction EXIT_SCOPE(_,n$8,n$10,this); [line 270] in vpath_find exp:_t$0 vpath_find: cannot find _t$0 Instruction Returns PROP 1 of 1: (-1 < val$6); val$6 != 1; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (_t$4); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) .... After Symbolic Execution .... PROP 1 of 2: (-1 < val$6); val$6 != 1; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$3); MEMne < Description ParentRunner.getDescription():270 > {vpath: }($irvar1); MEMna < Description ParentRunner.getDescription():270 > {vpath: }(_t$2); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > ($irvar1); RET < List ParentRunner.getFilteredChildren() > (val$2); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$2); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$5initial:org.junit.runners.model.Statement*; $T0_31 = _t$4initial:void; $irvar1 = _t$1update:270:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$3|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$2|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; $irvar1|->{fAnnotations:_t$2update:270, fChildren:_t$3update:(z)270, fDisplayName:"null"update:270, fTestClass:nullupdate:270, fUniqueId:"null"update:270}formal(z):org.junit.runner.Description; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) PROP 2 of 2: (-1 < val$6); val$6 != 1; val$2 != null; MEMne < Description ParentRunner.getDescription():270 > {vpath: }(_t$0); UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < Description ParentRunner.getDescription() > (_t$4); RET < TestClass ParentRunner.getTestClass() > (val$3); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = EXN _t$0update:270:org.junit.runners.model.Statement*; $T0_31 = _t$1initial:void; $irvar1 = _t$2initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$3initial:void; this = 0nullify:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; _t$0|->{}alloc:java.lang.IllegalArgumentException; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:val$6formal(z)}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub )
node10#session223(270) biabduction **** [RE:Pending] Statement ParentRunner.withClassRules(RunBefores) Node: 10, Procedure: Statement ParentRunner.withClassRules(RunBefores), Todo: 1 **** PROP 1 of 1: (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = val$1formal:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) .... Instructions: .... n$8=*&this:org.junit.runners.ParentRunner* [line 270]; _=*n$8:org.junit.runners.ParentRunner [line 270]; n$10=_fun_Description ParentRunner.getDescription()(n$8:org.junit.runners.ParentRunner*) virtual [line 270]; *&$irvar1:org.junit.runner.Description*=n$10 [line 270]; NULLIFY(&this); [line 270]; EXIT_SCOPE(_,n$8,n$10,this); [line 270]; Processing prop 1/1 Instruction n$8=*&this:org.junit.runners.ParentRunner* [line 270] .... Rearrangement Start .... Exp: &this Prop: (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2161initial:org.junit.runners.model.Statement*; $T0_31 = n$2162initial:void; $irvar1 = n$2163initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2164initial:void; this = val$1formal:org.junit.runners.ParentRunner*( sub ); old_this = val$1formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 1: val$1 = old_this ; (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction _=*n$8:org.junit.runners.ParentRunner [line 270] .... Rearrangement Start .... Exp: n$8 Prop: val$1 = old_this ; (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2165initial:org.junit.runners.model.Statement*; $T0_31 = n$2166initial:void; $irvar1 = n$2167initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2168initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Prover.check_inconsistency_base: inconsistency reason [None] Prover.check_inconsistency_base: inconsistency reason [None] Instruction Returns PROP 1 of 1: val$1 = old_this ; (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = _t$3initial:org.junit.runners.model.Statement*; $T0_31 = _t$2initial:void; $irvar1 = _t$1initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = _t$0initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) Instruction n$10=_fun_Description ParentRunner.getDescription()(n$8:org.junit.runners.ParentRunner*) virtual [line 270] Found 5 specs for function org.junit.runners.ParentRunner.getDescription():org.junit.runner.Description START EXECUTING SPECS FOR org.junit.runners.ParentRunner.getDescription():org.junit.runner.Description from state val$1 = old_this ; (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2169initial:org.junit.runners.model.Statement*; $T0_31 = n$2170initial:void; $irvar1 = n$2171initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2172initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) EXECUTING SPEC 1/5 ACTUAL PRECONDITION = val$1 = old_this ; (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2169initial:org.junit.runners.model.Statement*; $T0_31 = n$2170initial:void; $irvar1 = n$2171initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2172initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: this|callee = _t$3870formal:org.junit.runners.ParentRunner*( sub ) ; _t$3868|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3869|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$3869rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$3868rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$3871); MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(return|callee); MEMna < Annotation[] ParentRunner.getRunnerAnnotations():395 > {vpath: }(_t$3872); UND < List Collections.unmodifiableList(ArrayList) > :534(_t$3874); LOCKED(_t$3869); RET < Annotation[] TestClass.getAnnotations() > (_t$3872); RET < List ParentRunner.getFilteredChildren() > (_t$3874); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$3872); RET < TestClass ParentRunner.getTestClass() > (_t$3868) ; return|callee = _t$3873update:403:org.junit.runner.Description* ; _t$3871|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$3872|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$3872update:395, fChildren:_t$3871update:(z)395, fDisplayName:"null"update:395, fTestClass:nullupdate:395, fUniqueId:"null"update:395}formal(z):org.junit.runner.Description; _t$3868|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$3869|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$3869formal, filteredChildren:_t$3874update:(z)400, testClass:_t$3868formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$3874); RET < TestClass ParentRunner.getTestClass() > (_t$3868) ; return|callee = EXN _t$3874update:395:org.junit.runner.Description* ; _t$3874|->{}alloc:java.lang.IllegalArgumentException; _t$3868|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$3869|->{}formal(z):java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:_t$3869formal, filteredChildren:nullformal(z), testClass:_t$3868formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ---------------------------------------------------------------- pre_check_pure_implication pi1: val$1 = n$8; (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268(val$5); RET < boolean List.isEmpty() > (0) pi2: returns sub1: val$1 = n$8 sub2: val$1 = n$8 Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2169initial:org.junit.runners.model.Statement*; $T0_31 = n$2170initial:void; $irvar1 = n$2171initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2172initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8] |- this|callee = _t$3870formal:org.junit.runners.ParentRunner*( sub ) ; this|callee|->{childrenLock:_t$3869rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$3868rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$3869|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$3868|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply n$8 _t$3870 Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2169initial:org.junit.runners.model.Statement*; $T0_31 = n$2170initial:void; $irvar1 = n$2171initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2172initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$3870 = n$8] |- n$8|->{childrenLock:_t$3869rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:_t$3868rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ); _t$3869|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); _t$3868|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) do_imply val$2 null do_imply val$3 _t$3868 Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2169initial:org.junit.runners.model.Statement*; $T0_31 = n$2170initial:void; $irvar1 = n$2171initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2172initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$3868 = val$3; _t$3869 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$3870 = n$8 val$2 = null MISSING FLD: n$8|->{childrenLock:_t$3869rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ) [FRAME TYPING: n$8: org.junit.runners.ParentRunner( sub ) ] do_imply null null Current Implication SUB: val$1 = n$8 (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2169initial:org.junit.runners.model.Statement*; $T0_31 = n$2170initial:void; $irvar1 = n$2171initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2172initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$3868 = val$3; _t$3869 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$3870 = n$8 val$2 = null MISSING FLD: n$8|->{childrenLock:_t$3869rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Final Implication SUB: val$1 = n$8 (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2169initial:org.junit.runners.model.Statement*; $T0_31 = n$2170initial:void; $irvar1 = n$2171initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2172initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$2|->{}formal:java.util.List( sub ) [SUB: val$1 = n$8; _t$3868 = val$3; _t$3869 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$3870 = n$8 val$2 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$3869rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] Result of Abduction SUB: val$1 = n$8 (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0); old_this = old_this ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2169initial:org.junit.runners.model.Statement*; $T0_31 = n$2170initial:void; $irvar1 = n$2171initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2172initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) [SUB: val$1 = n$8; _t$3868 = val$3; _t$3869 = %path%n8_org.junit.runners.ParentRunner.childrenLock$-3; _t$3870 = n$8 val$2 = null* %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ) MISSING FLD: n$8|->{childrenLock:_t$3869rearrange:531}formal(z):org.junit.runners.ParentRunner( sub )] |- this|callee = n$8formal:org.junit.runners.ParentRunner*( sub ) ; val$3|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); %path%n8_org.junit.runners.ParentRunner.childrenLock$-3|->{}rearrange:(z)531:java.util.concurrent.locks.Lock( sub ); this|callee|->{childrenLock:%path%n8_org.junit.runners.ParentRunner.childrenLock$-3rearrange:531, filteredChildren:nullrearrange:(z)530, testClass:val$3rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) [FRAME TYPING: val$3: org.junit.runners.model.TestClass( sub ) n$8: org.junit.runners.ParentRunner( sub ) ] returning TRUE WARNING: Missing fields hpred has non-footprint vars: n$8|->{childrenLock:%path%n8_org.junit.runners.ParentRunner.childrenLock$-3rearrange:531}formal(z):org.junit.runners.ParentRunner( sub ) Implication error: missing_sigma not empty in re-execution EXECUTING SPEC 2/5 ACTUAL PRECONDITION = val$1 = old_this ; (val$6 <= -1); val$2 != null; UND < List ParentRunner.classRules() > :268($RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar); RET < boolean List.isEmpty() > (0) ; classRules = val$5update:268:java.util.List*; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar = val$5formal:java.util.List*( sub ); $irvar0 = 0nullify:void; return = n$2169initial:org.junit.runners.model.Statement*; $T0_31 = n$2170initial:void; $irvar1 = n$2171initial:void; statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); old_statement = val$4formal:org.junit.internal.runners.statements.RunBefores*( sub ); $irvar2 = n$2172initial:void; this = n$8formal:org.junit.runners.ParentRunner*( sub ); this|callee = n$8actual_precondition:org.junit.runners.ParentRunner*; old_this = n$8formal:org.junit.runners.ParentRunner*( sub ) ; $RET_org.junit.runners.ParentRunner.classRules():java.util.List|abducedRetvar|->{mIsEmpty:0update:(z)269}formal(z):java.util.List( sub ); val$3|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); val$2|->{}formal:java.util.List( sub ); old_this|->{filteredChildren:val$2formal(z), testClass:val$3formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) SPEC = --------------------------- ---------- --------------------------- PRE: _t$3876 != null ; this|callee = _t$3877formal:org.junit.runners.ParentRunner*( sub ) ; _t$3875|->{clazz:nullrearrange:(z)185}rearrange:(z)390:org.junit.runners.model.TestClass( sub ); _t$3876|->{}rearrange:400:java.util.List( sub ); this|callee|->{filteredChildren:_t$3876rearrange:(z)530, testClass:_t$3875rearrange:(z)355}formal(z):org.junit.runners.ParentRunner( sub ) POST 1 of 2: _t$3876 != null; MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$3878); MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(return|callee); MEMna < Annotation[] ParentRunner.getRunnerAnnotations():395 > {vpath: }(_t$3879); RET < Annotation[] TestClass.getAnnotations() > (_t$3879); RET < List ParentRunner.getFilteredChildren() > (_t$3876); RET < Annotation[] ParentRunner.getRunnerAnnotations() > (_t$3879); RET < TestClass ParentRunner.getTestClass() > (_t$3875) ; return|callee = _t$3880update:403:org.junit.runner.Description* ; _t$3878|->{}alloc:java.util.concurrent.ConcurrentLinkedQueue; _t$3879|->[0|]alloc:java.lang.annotation.Annotation*[_*_][0]; return|callee|->{fAnnotations:_t$3879update:395, fChildren:_t$3878update:(z)395, fDisplayName:"null"update:395, fTestClass:nullupdate:395, fUniqueId:"null"update:395}formal(z):org.junit.runner.Description; _t$3875|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$3876|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$3876formal(z), testClass:_t$3875formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) POST 2 of 2: _t$3876 != null; MEMne < Description Description.createSuiteDescription(String,Annotation[]):395 > {vpath: }(_t$3880); RET < TestClass ParentRunner.getTestClass() > (_t$3875) ; return|callee = EXN _t$3880update:395:org.junit.runner.Description* ; _t$3880|->{}alloc:java.lang.IllegalArgumentException; _t$3875|->{clazz:nullformal(z)}formal(z):org.junit.runners.model.TestClass( sub ); _t$3876|->{}formal:java.util.List( sub ); this|callee|->{filteredChildren:_t$3876formal(z), testClass:_t$3875formal(z)}formal(z):org.junit.runners.ParentRunner( sub ) ----------------------------------------------------------------